shard-wiki/workplans/SHARD-WP-0003-engine-dives-batch.md

216 lines
8.8 KiB
Markdown
Raw Normal View History

---
id: SHARD-WP-0003
type: workplan
title: "wiki-engine deep-dive batch (new-insight + git-forge + classic engines)"
domain: consumer
repo: shard-wiki
status: done
owner: tegwick
topic_slug: whynot
created: "2026-06-14"
updated: "2026-06-14"
state_hub_workstream_id: "56af8185-420f-4a56-9152-5c64fda7a3f3"
---
# SHARD-WP-0003 — wiki-engine deep-dive batch
## Goal
Close the remaining coverage gaps in the wiki-engine research set. Each task is one
**deep dive**: persist a research memo, promote/enrich the use-case catalog, and log any
adapter-contract architecture notes for `SHARD-WP-0002`. The set was chosen (per the
2026-06-14 coverage review against `research/260614-shard-spectrum-synthesis/findings.md`)
to favour engines that promise **genuinely new architecture** over ones that merely
reinforce existing families, plus the INTENT-named git-forge wikis and four additional
engines requested for breadth/lineage.
Each dive follows the established tradition (cf. the 260613/260614 dives): a
`research/<yymmdd>-<slug>-deep-dive/` dir with `README.md` + `findings.md`; new UCs and
enrichments promoted to `spec/UseCaseCatalog.md` (with a per-source mapping subsection,
traceability rows, and header update); `research/README.md` and `SCOPE.md` updated;
commit + state-hub sync.
## Context
- Coverage review: `research/260614-shard-spectrum-synthesis/findings.md` (v2) — the
shard family matrix and thirteen spectra define what "new insight" means here.
- Use cases: `spec/UseCaseCatalog.md` (currently UC-26UC-69 from research).
- Adapter contract: `workplans/SHARD-WP-0002-federation-architecture.md` (T11T16) —
dives that touch the contract feed it; a **re-synthesis** may be warranted after the
batch (see Acceptance).
- Prior engine dives: `research/260613-{xwiki,twiki,foswiki}-deep-dive/`,
`research/260614-wikijs-deep-dive/` (storage-module prior art).
**Non-goal:** Implement anything. This workplan produces research + catalog updates only.
---
## Federated Wiki — federation model (fork / journal / happenings)
```task
id: SHARD-WP-0003-T1
status: done
priority: high
state_hub_task_id: "347fa26d-105b-42d1-91f3-67eabfdb8f22"
```
Deep-dive Ward Cunningham's **Federated Wiki** (Smallest Federated Wiki). Distinctive
angle: it is a **federation model**, not just a shard — fork-with-provenance, the
per-page **JSON journal** (ordered actions), the **story** (typed item array), and
**happenings** (bounded collaborations). This is prior art for shard-wiki's *coordination
layer itself*, complementing the federation track. Already touched in
`research/260608-federation-concepts/` §3 — go deeper into the data model and protocol.
Map to UC-26 (fork), UC-28 (carry-forward), UC-30 (time-bounded space), UC-05/27 (union/
chorus); feed `SHARD-WP-0002` T1T5.
## Wikibase / Wikidata — RDF entity-statement knowledge graph
```task
id: SHARD-WP-0003-T2
status: done
priority: high
state_hub_task_id: "23272f05-556b-4cc7-93b6-4ac3c7277738"
```
Deep-dive **Wikibase** (the engine behind **Wikidata**). Distinctive angle: an
**entity-statement (RDF-ish) data model** — items, properties, statements with
qualifiers and references — plus **SPARQL** query. This is a *new far end* of the
structure and native-query spectra (beyond Notion's DB / XWiki XObjects): a true typed
knowledge graph with provenance-bearing statements. Map to/enrich UC-34, UC-58 (typed
records + relations), UC-52 (native query → SPARQL), UC-24 (statement-level provenance);
feed `SHARD-WP-0002` T12/T16.
## TiddlyWiki — the self-contained single-file wiki
```task
id: SHARD-WP-0003-T3
status: done
priority: medium
state_hub_task_id: "a0ab1aba-9aa2-4214-b130-67ba2805e64b"
```
Deep-dive **TiddlyWiki**. Distinctive angle: an **entire wiki in one self-contained HTML
file** (tiddlers + the app), the **whole-file write-granularity** anchor already named in
the synthesis matrix, with TiddlyWeb / Node.js sync variants and a tiddler/field data
model. The portability/granularity extreme. Enrich UC-35 (write granularity), UC-40
(file-store), UC-34 (tiddler fields); confirm the single-file shard attach story; feed
`SHARD-WP-0002` T11/T14.
## ikiwiki — compile-to-static, git-backed, distributed peer wikis
```task
id: SHARD-WP-0003-T4
status: done
priority: medium
state_hub_task_id: "5748d246-66a8-4cf2-9b22-427cc4507b63"
```
Deep-dive **ikiwiki**. Distinctive angle: a wiki **compiled to static HTML** from a
**git-backed** source, with **distributed** operation (push/pull between wiki clones,
edit-triggered pingers). Referenced in `260608-federation-concepts/` — go deeper into the
git-distributed federation + static-publish model. Map to/enrich UC-31 (subscribe/ping),
UC-56 (outbound publish), UC-37 (static), UC-33 (git-branch space); feed `SHARD-WP-0002`
T4/T6.
## Gitea / GitLab / GitHub wikis — git-forge-hosted Markdown wikis
```task
id: SHARD-WP-0003-T5
status: done
priority: high
state_hub_task_id: "9719ce23-5edd-4110-a428-3cf4df753cdc"
```
Deep-dive the **git-forge wikis** (Gitea, GitLab, GitHub) as one grouped memo. Distinctive
angle: each is a **git repo of Markdown** exposed through a forge (clone the wiki repo
directly *or* use the forge API). INTENT explicitly names **Gitea wikis** as a shard
participant, so this confirms a first-class backend. Compare with Wiki.js's
engine-maintained git mirror (UC-68): here the git repo *is* the native store. Enrich
UC-40 (file-store native), UC-02 (attach), UC-68 (git attach), UC-38 (forge API host);
feed `SHARD-WP-0002` T14.
## Salesforce Quip — collaborative live docs + embedded spreadsheets
```task
id: SHARD-WP-0003-T6
status: done
priority: medium
state_hub_task_id: "3e55128a-161c-48d0-9ab4-75fd48616dad"
```
Deep-dive **Salesforce Quip**. Distinctive angle: a **closed SaaS** of live collaborative
documents with **embedded spreadsheets/live apps** and a REST API, tied to Salesforce
identity/permissions. A hosted-collab contrast point (vs Notion): document+spreadsheet
hybrid, enterprise auth. Enrich UC-57 (external-API), UC-55/58 (embedded
spreadsheet/structured content), UC-36 (internal history), UC-06 (enterprise ACL); feed
`SHARD-WP-0002` T11/T14.
## Oddmuse — minimalist single-script Perl wiki
```task
id: SHARD-WP-0003-T7
status: done
priority: low
state_hub_task_id: "581e0a96-62e9-4074-86c3-c6df18b72f06"
```
Deep-dive **Oddmuse**. Distinctive angle: a **single Perl script**, **plain-text page
files**, deliberately minimal — the low-complexity file-store end. Useful as a
graceful-degradation / minimal-adapter reference. Enrich UC-40 (file-store), UC-01 (open
wiki), UC-36/41 (plain-text history); feed `SHARD-WP-0002` T11 (minimal capability
profile).
## Mojomojo — Perl Catalyst DB-backed wiki
```task
id: SHARD-WP-0003-T8
status: done
priority: low
state_hub_task_id: "42222ccd-4b91-4dfa-900d-3b94e1f246f4"
```
Deep-dive **MojoMojo**. Distinctive angle: a **Perl Catalyst / DBIx::Class** DB-backed
wiki with page hierarchy, attachments, and inline editing — a classic MVC DB engine
contrast to the file-store classics. Enrich UC-02/40 (DB vs file attach), UC-36 (DB
history), UC-34 (structured fields); feed `SHARD-WP-0002` T13/T14.
## UseModWiki — the flat-file ancestor
```task
id: SHARD-WP-0003-T9
status: done
priority: low
state_hub_task_id: "119c6d50-deaa-45ee-bb44-271985974d89"
```
Deep-dive **UseModWiki**. Distinctive angle: the **historical ancestor** — a Perl CGI
flat-file wiki, CamelCase linking, the lineage behind c2-era wikis and **MediaWiki Phase
I**. Origins/lineage value (pairs with `260608-c2-wiki-origins/`): the minimal flat-file
page+history model the whole field descends from. Enrich UC-01 (open wiki), UC-40
(flat-file store), UC-25 (CamelCase naming), UC-36/41 (flat-file revision history); note
lineage for the origins record.
---
## Acceptance criteria
- Each of T1T9 has a `research/<yymmdd>-<slug>-deep-dive/` dir with `README.md` +
`findings.md`, following the dive template (capability profile, INTENT mapping, UC
seeds, sources, traceability).
- `spec/UseCaseCatalog.md` updated per dive (new UCs + enrichments + a per-source mapping
subsection + traceability rows + header/promoted-from); `research/README.md` and
`SCOPE.md` (UC count, research row) updated.
- Findings that touch the adapter contract are cross-referenced to `SHARD-WP-0002`
(T11T16); their architecture notes are captured for the next synthesis.
- Each dive is committed (`research:` message) and state-hub-synced (progress event).
- **After the batch:** assess whether a `research/260614-shard-spectrum-synthesis`
**v3** is warranted (new spectra/modes from Wikibase RDF, Federated Wiki coordination,
TiddlyWiki single-file, ikiwiki distributed) and re-fold into `SHARD-WP-0002` if so.
## Suggested task order
High-insight first: **T1 Federated Wiki → T2 Wikibase → T5 git-forge wikis** (INTENT-named)
**T3 TiddlyWiki → T4 ikiwiki** → then the contrast/lineage set **T6 Quip → T8 MojoMojo
→ T7 Oddmuse → T9 UseModWiki**.
</content>