Skip to content

feat(docs): docs-management pipeline POC (docs-kit + outlines + AppShell renderer)#396

Draft
interacsean wants to merge 2 commits into
mainfrom
1549-docs-management-overhaul
Draft

feat(docs): docs-management pipeline POC (docs-kit + outlines + AppShell renderer)#396
interacsean wants to merge 2 commits into
mainfrom
1549-docs-management-overhaul

Conversation

@interacsean

Copy link
Copy Markdown
Contributor

Pilot for the documentation management overhaul. Tracking issue: tailor-inc/platform-planning#1549 · Decision record: #387

What this is

A one-way source → output docs pipeline, proven end-to-end on 3 components + 2 patterns + 1 concept. Humans author intent; a deterministic tool generates and gates.

  • Authoring: humans edit only *.docs-outline.md (prose + English example intents + sources globs) and the runnable *.examples.tsx. Everything under docs/ is generated — never hand-edited.
  • packages/docs-kit (new, private): ts-morph type-surface extractor + hasher, coverage reconciler, auto-generated first-party prop tables, markdown assembler (extracts fences from the examples), and a deterministic no-LLM check / sync CLI.
  • Drift gate: committed docs/docs-manifest.json. Type-surface + outline hash mismatch blocks; snapshot hash is advisory; a hand-edited generated file blocks. Coverage reconciled both ways vs index.ts (uncovered → advisory during migration; a unit owning zero exports → block). sync formats output before hashing so the pre-commit oxfmt hook is idempotent.
  • Renderer: examples/docs-app is a real AppShell app using file-based routing — routes + sidebar auto-generated from src/pages/, live in-place examples globbed from docs/ (no copy).
  • Retires the post-merge docs-update.lock.yml bot in favour of a local resync-docs skill + the pre-merge gate.

Verified

  • docs-kit builds + type-checks; docs:check exit 0.
  • Drift + output-integrity gates proven to block; clean tree → green.
  • All 5 examples.tsx type-check against core (the "examples compile in CI" gate).
  • docs-app runs: auto-grouped sidebar, breadcrumbs, command palette, theme switcher; Button/DataTable pages render prose + live examples.

Not included / follow-ups

  • Prop-table default values (cva defaultVariants extraction).
  • docs-kit generating the per-unit page.tsx stubs.
  • CI wiring (docs:check in ci-packages.yaml; pre-commit warn) + deleting docs-update.lock.yml.
  • Migrating the remaining ~60 hand-written docs; flipping enforceCoverage on.

See decisions/documentation-management-overhaul.md for the full design + Implementation notes.

🤖 Generated with Claude Code

Pure moves (no content change) so history/lineage is preserved:
- component docs: docs/components/{button,dialog,data-table}.md → the
  colocated *.docs-outline.md source next to each component
- patterns: catalogue/src/pattern/{form/modal,list/dense-scan} PATTERN.md +
  example .tsx → docs-src/patterns/ + docs/patterns/

The follow-up commit adapts these into the docs-kit outline/example format and
generates the docs/ output. Catalogue's skill generator is intentionally left
to regress — it will be retired and regenerated from these docs later.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@interacsean
interacsean force-pushed the 1549-docs-management-overhaul branch from bfa683d to b4814a1 Compare July 24, 2026 00:45
…nderer)

Builds on the prep-move commit. Adds packages/docs-kit (ts-morph type-surface
extractor + hasher, coverage reconciler, auto prop tables, deterministic
check/sync CLI that formats before hashing), adapts the moved component docs
into *.docs-outline.md + authored examples, adapts the moved catalogue patterns
(form-modal, list-dense-scan) into the outline/example format, adds a styling
concept, generates docs/ + docs-manifest.json, the resync-docs skill, and an
AppShell file-based docs-app that renders prose + live examples.

Patterns are sourced from catalogue/src/pattern (moved in the prep commit);
catalogue's generator is knowingly regressed pending its retirement.

Refs: tailor-inc/platform-planning#1549

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@interacsean
interacsean force-pushed the 1549-docs-management-overhaul branch from b4814a1 to 2ab5dd5 Compare July 24, 2026 05:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant