--- id: SHARD-WP-0001 type: workplan title: "shard-wiki requirements from yawex prior art" domain: whynot repo: shard-wiki status: active owner: tegwick topic_slug: whynot created: "2026-06-08" updated: "2026-06-08" state_hub_workstream_id: "0ed023a2-760b-4990-b931-8ee1f41ea08f" --- # SHARD-WP-0001 — shard-wiki requirements from yawex prior art ## Goal Turn the yawex (2004–05 Perl wiki engine) prior-art review into shard-wiki requirements and design decisions. Produce federation-relevant specifications that map onto `INTENT.md` without inheriting yawex's monolithic engine shape. ## Context - Prior art: `history/priorart/yawex-0.7.4/` - Requirements seed: `docs/requirements-from-yawex.md` - Access model draft: `docs/access-model-blueprint.md` - NetKingdom integration draft: `docs/requirements-user-engine-netkingdom.md` Open architectural thread: a minimal authorization model in core revises an INTENT non-goal and needs a ratified INTENT amendment before the access model is treated as settled. ## Design federation page-resolution model ```task id: SHARD-WP-0001-T1 status: todo priority: high state_hub_task_id: "ebc036e4-1c3c-4e39-959b-1e37bc1049ad" ``` Design shard-wiki's cross-shard name resolution fresh. Use yawex's LOCAL/CLIMB/DROP/GLOBAL/REMOTE/SWITCH/JUMP/VIRTUAL/FAILED states as a checklist of cases to handle (especially REMOTE for remote shards and VIRTUAL for projections), not as the interface. Decision 2026-06-08: inspiration only. ## Define namespace/path model and page+shard roles ```task id: SHARD-WP-0001-T2 status: todo priority: high state_hub_task_id: "431b4d28-3768-468f-b76f-4767f5aa1888" ``` Union path/namespace model with relative/absolute paths and normalization (from yawex topics-as-dirs). Map page classes local/global/virtual to shard roles canonical/cross-cutting/projected-computed. ## Specify union-level derived views ```task id: SHARD-WP-0001-T3 status: todo priority: medium state_hub_task_id: "564545ec-84f7-4c3d-a779-5b9c356919f4" ``` Decide which derived views are core vs adapter-provided: BackLinks, RecentChanges, AllPages, SiteMap, Search. BackLinks (link-graph over the federated union) is the strongest core candidate. ## Provenance and freshness model ```task id: SHARD-WP-0001-T4 status: todo priority: medium state_hub_task_id: "738326f5-b76c-4ecf-8843-7c762c3647d8" ``` Generalize yawex Page::info (modtime, TODO lasteditor/hits/edits) into INTENT's explicit provenance: source shard, freshness, cached?, has-overlay?, diverges-from?. ## Overlay / lightweight-patch model ```task id: SHARD-WP-0001-T5 status: todo priority: medium state_hub_task_id: "a268de6a-d1ef-4ed9-9828-c70991e1a772" ``` Non-destructive edits against remote/read-only shards as drafts/patches/overlays before mutation (INTENT: overlay-before-mutation). Seeded by yawex's append + threaded-comment workflow. ## Markdown link semantics ```task id: SHARD-WP-0001-T6 status: todo priority: low state_hub_task_id: "a7499f3e-911c-455b-afc3-eefc401eb60d" ``` TRANSFORM yawex CamelCase/[[free]]/red-? links into a CommonMark wikilink + red-link extension. Open question: core vs reference-UI concern. ## Acceptance criteria - Each task produces a written spec or ADR-ready design note in `docs/`. - Designs honor INTENT boundaries: mechanism over policy, union without erasure, overlay before mutation, capability-aware adapters. - Access-model and NetKingdom integration drafts are either ratified or explicitly deferred with tracked open questions. - The next implementation workplan (domain model / adapter contract) can start without unresolved yawex-derived design gaps.