Skip to content

T-9LZ4-site-supplemental-migration

Status: closed/done · Impact: medium · Complexity: medium

Move the hand-written pages out of the generated content root and mirror them back in through the manifest — after this task, zero undeclared files live under site/src/content/docs/ and the §1 ownership sweep can enforce that invariant for good. D-0010-deterministic-site-assembly §2, Migration Phase 3.

LocationRole today
site/src/content/docs/index.mdHand-written landing page inside the generated root
site/src/content/docs/architecture/Four hand-written prose pages (data-model is generated)
site/src/content/docs/changelog.mdHand-written release notes
site/supplemental/Does not exist

supplemental.ts mirrors each manifest-declared page from site/supplemental/ into the content root (route from path, registered through the P1 registry; frontmatter passed through verbatim). The landing slot maps site/supplemental/index.md to the content-root index.md. The hand-written pages move: index.md, architecture/{overview,deterministic-first, harness-agnostic,github-ref-leases}.md, changelog.mdsite/supplemental/, with site.yaml entries reproducing today’s nav (Architecture group slots generated: data-model between its file children).

  1. supplemental.ts: mirror step with route registration and pass-through frontmatter.
  2. landing: slot handling.
  3. git mv the seven pages; write their manifest entries.
  4. Verify: full pass leaves zero undeclared files; site build green; routes unchanged (same slugs).
  5. Tests: mirror fixtures, landing fixture, undeclared-supplemental fixture.
LocationKindChange
plugin/lib/services/docs/site/supplemental.tsnewMirror step
site/supplemental/newThe seven relocated pages
site/src/content/docs/index.mdmodifyBecomes mirrored output
site/src/content/docs/architecture/modifyProse pages become mirrored output
site/src/content/docs/changelog.mdmodifyBecomes mirrored output
site/site.yamlmodifyLanding + Architecture group + changelog entries
plugin/lib/services/docs/tests/modifyMirror suites
  • AC-1: After a full pass, every file under site/src/content/docs/ was placed by the generator (sweep reports zero foreign files).
  • AC-2: All seven page routes resolve unchanged; site build green.
  • AC-3: Editing a page under site/supplemental/ and re-running the pass updates exactly that mirrored page.
  • AC-4: A file under site/supplemental/ absent from the manifest fails validation.

Extracted from D-0010-deterministic-site-assembly Migration Phase 3.

T-G5ND-site-generated-sidebar


← Back to Tasks