Wiki Sustainability Roadmap
Plan for the next phase of wiki maintenance and tooling, scoped in a Cowork meta-work session on 2026-04-24 as the follow-up to WIKI-META-1. Ties three specs — WIKI-SYNC-1, WIKI-AUTO-1, WORKSPACE-1 — into one coordinated rollout.
The picture today
After WIKI-META-1 shipped, the wiki is content-healthy:
- 277 indexable pages
- 3,884 wikilink occurrences, 100% resolution, 0 broken, 0 ambiguous, 0 fuzzy
- Five project sub-indexes in place (website, humphrey, finance, ops, wiki-viewer). A sixth for the meta-workspace pride-lvl-up lands under WORKSPACE-1.
- Mat’s viewer live at
https://pride-wiki.pages.dev, synced via the Wiki Sync Bot GitHub Action (.github/workflows/sync-wiki-to-viewer.yamlinpride-turnaround; documented as a wiki entity page under WIKI-SYNC-1)
The fragility is in the tooling and process layer around the content:
- Silent commit-drift. Shae edits in Obsidian. Some edits are committed, some aren’t. Both states look identical in Obsidian. The bot only syncs tracked files, so untracked content is invisible to Mat’s viewer — and any tracked page that links to an untracked target renders a broken link for Mat. On 2026-04-24 triage, 8 substantive research pages (6,984 words, 51 incoming references) had been on disk for ten days unnoticed.
- No drift gate. The wiki audit (
scripts/audit-wikilinks.py) is manual. Nothing blocks broken links from reaching main and cascading to Mat’s viewer. - Local and remote sync behave differently. The Wiki Sync Bot is git-tracked-only because of
actions/checkout@v4. The localsync-from-turnaround.shscript mirrors the filesystem. Running the local sync diverges the viewer from what the bot would produce. - Bot is undocumented. No wiki entity page. No debug notes. Single point of infrastructure failure.
- Pride lvl up Cowork project has no identity. Meta-work sessions start from scratch every time.
The plan
Three specs, specific sequencing.
WIKI-SYNC-1 — Commit the backlog, document the bot, make local sync durable
Triages the 29 untracked/modified files from the 2026-04-14 research ingest wave: 8 pages committed, 15 updates committed, 2 empty stubs retargeted and deleted, 4 edge-case files surfaced for Shae’s decision. Documents the Wiki Sync Bot as a wiki entity page. Rewrites pride-wiki/scripts/sync-from-turnaround.sh to filter by git ls-files, matching bot behaviour.
Delivers: clean working tree, bot documentation, architectural parity between local and remote sync.
Status: in flight with Claude Code at time of writing.
Spec: Pride-lvl-up/_specs/WIKI-SYNC-1-bot-doc-and-drift.md.
WIKI-AUTO-1 — Audit automation at commit/push
Extends scripts/audit-wikilinks.py with argparse + tracked-files mode + anchor validation + orphan detection + frontmatter schema validation + structured exit codes. Adds a GitHub Actions workflow that runs the extended audit on PRs and on push to main; merges with the existing sync workflow so sync only fires when audit passes. Enables branch protection on pride-turnaround/main requiring the audit check to pass before merge.
Delivers: drift prevention at the commit boundary. Broken links cannot reach main. Mat’s viewer stays clean.
Depends on: WIKI-SYNC-1. A clean tree is a precondition — otherwise the audit catches the existing drift on day one and the gate becomes “can’t merge anything”.
Spec: Pride-lvl-up/_specs/WIKI-AUTO-1-audit-automation.md.
WORKSPACE-1 — Pride lvl up identity
Establishes “Pride lvl up” as the Cowork workspace for cross-project meta-work + wiki infrastructure. Creates _pride-lvl-up-project-setup/INSTRUCTIONS.md with the full project identity, replaces the Cowork project-instructions field with a concise pointer, creates the _wiki/projects/pride-lvl-up.md sub-index.
Delivers: clear boundary between meta-work and project-specific work. Faster session kickoffs. A home for WIKI-, WORKSPACE-, SYSTEMS-* specs.
Depends on: nothing — independent of the other two, can run in any order.
Spec: Pride-lvl-up/_specs/WORKSPACE-1-lvlup-identity.md.
Sequencing
Recommended order: WORKSPACE-1 → WIKI-SYNC-1 → WIKI-AUTO-1.
WORKSPACE-1 first because it’s independent and low-risk; establishing the meta-workspace identity unblocks cleaner execution of the other two. WIKI-SYNC-1 next to clean the tree. WIKI-AUTO-1 last because it enforces rules the tree wouldn’t yet pass.
Practically, WIKI-SYNC-1 was scoped and partially executed during the 2026-04-24 planning session (one commit — the .gitignore additions — landed as 2268f7a), so it’s already in flight. WORKSPACE-1 can land in parallel once Claude Code starts.
Decisions already made
- Sync strategy: Strategy B only (rewrite local script to filter by
git ls-files). Strategy A (git rm orphans) dropped when archaeology confirmed the “5 competitive pages” were never upstream — nothing to git rm from history. - Automation topology: GitHub Action as sole gate on PRs and push to main. No pre-commit hook this iteration (Shae is the only committer; revisit if Mon/Em/others start contributing).
- Audit scope: comprehensive — wikilinks, anchors, orphans, frontmatter.
- Branch protection: enabled on
pride-turnaround/main, audit check required, applies to admins too. - WORKSPACE-1 identity: meta-work + wiki infrastructure hub (not a personal scratchpad, not folded into Wiki Viewer).
Open questions surfaced during planning
- Local sync script: should exclude lists be duplicated across bot YAML and local shell script, or factored into a shared file both consume? Deferred; start with duplication, revisit if the two drift.
- Audit report location on main pushes: commit to
_wiki/_audit/as durable history, or artefact-only with 90-day GitHub retention? Proposed: artefact-only for git log cleanliness. - Anchor normalisation: should the audit match GitHub’s anchor normalisation, Quartz’s, or Obsidian’s? These differ slightly. Proposed: Quartz’s (that’s what Mat sees).
index.mdinconsistency: header says 265 pages, inline count says 262. Not blocking WIKI-SYNC-1 or WIKI-AUTO-1 but flagged as a content-pass follow-up.
Deferred follow-ups
Flagged during the session, not included in WIKI-SYNC-1/AUTO-1/WORKSPACE-1 scope:
- Batch 4 root-level files.
Event Financial Performance - Pride v2.xlsx,Pipemakers Park Forecast v2.xlsx,scripts/ingest-from-mat.sh— untracked inpride-turnaroundroot. Need Shae’s per-file disposition (commit / gitignore / move). - Pre-commit hook (WIKI-AUTO-2). If more contributors join.
- Weekly audit history snapshot. Could run as a scheduled GH Action that commits a trend report weekly. Pure reporting, not gating.
- Heading anchor normaliser parity. Once WIKI-AUTO-1 lands, monitor whether Quartz and the audit agree on anchor slugs. Discrepancies go into WIKI-AUTO-3.
- Cross-wiki link validation. If the Humphrey app starts linking to wiki pages, those links need audit too — separate tooling.
What “sustainable” means after this rollout
After all three specs land:
- Drift invisible at write-time becomes visible before merge. An untracked page referenced from tracked content, a broken anchor, missing frontmatter — all caught by the audit workflow before the change can land on main. Shae’s viewer stays clean even if Shae is distracted.
- One commit away from recovery. If the Wiki Sync Bot goes down,
_wiki/entities/Wiki Sync Bot.mddocuments what it did, what credentials it needs, where to find its workflow file, and how to rebuild. - Workspace identity scales. Pride lvl up is the named home for meta-work. If another person joins (Mon, Em, a contractor), the workspace identity tells them where to work without Shae explaining.
- Shae can step back for a month. Content stays consistent because the gate is automated. Contributors can add to the wiki via PRs, the audit catches their errors, the bot syncs the result. No human in the loop required for maintenance.
That last bullet is the success criterion. Everything else is in service of it.
Spec cross-links
- web-meta-1-claude-md-levelup — the preceding meta-work analysis that the WIKI-META-1 spec acted on
- Mat Wiki Access Implementation — viewer architecture (Quartz + Cloudflare Pages)
- Wiki Sync Bot entity page — created under WIKI-SYNC-1 Step 9 at
_wiki/entities/Wiki Sync Bot.md - Pride lvl up sub-index — created under WORKSPACE-1 Step 3 at
_wiki/projects/pride-lvl-up.md
Timeline (approximate)
- 2026-04-24 — planning session; WIKI-SYNC-1 commit 1 landed (
2268f7a), specs for SYNC/AUTO/WORKSPACE drafted, this roadmap filed - 2026-04-24 to 25 — Claude Code executes WIKI-SYNC-1 + WORKSPACE-1 in one session
- Following days — WIKI-AUTO-1 execution (separate session to keep the change surface contained)
- Follow-up decisions surfaced during execution land in a future session
Filed under WIKI-META-1 follow-up. Shipped to Mat’s viewer on next sync after WIKI-SYNC-1 closeout commit. Updates to this roadmap happen in Obsidian against the source vault; edits in the Quartz content copy will be overwritten on next bot sync.