An agent building a component from the docs-book alone could not assign
archetypes / holds / haptic kinds: the closed sets live only in code consts
and the corpus (correctly) forbids copying them into prose, so they were
invisible from the docs. STUMBLES #1, the top stumble.
Fix: docs/canon/vocabularies.md is GENERATED from the consts by
'npm run docs:vocabularies' — the ONE sanctioned place the lists are spelled
out (generated = no drift objection), which every other doc links to. It
covers part archetypes (with a one-line role each), sema families with their
default hold/persistence + per-intent overrides, verbs by family, intents,
the perceptual-duration scale, haptic kinds, the 33 palette scales, sizes,
variant archetypes, and the shared common.* strings.
- scripts/docs-vocabularies.ts imports the consts (robust — no fragile
JSDoc/regex parsing) and formats them; the generation is an exported
function so docs-check can compare.
- Added ARCHETYPE_DESCRIPTIONS to morfo/types.ts (co-located with
ARCHETYPE_VOCABULARY, satisfies Record<MorfoArchetype,string>) as the
authoritative one-liners the appendix reads — descriptions become
first-class data instead of inline union JSDoc a tool would have to parse.
- docs-check gains I7: it regenerates in-memory and fails if the committed
file drifts from the consts (negative-tested: corrupt -> error, regen ->
green). The appendix's own counts pass I1, so I1 doubles as a second guard.
- Linked from README (E2 canon row + two 'I want to' shortcuts), CANON.md
(doctrine here, enumerated lists there), architecture/morfo.md (pick a
part's archetype), and the component-audit minimum-package list (STUMBLES
#8).
docs:check 0 errors; npm run check unchanged in my files.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The global sweep caught the last corpus links still pointing at
pre-book paths: morfo chapter's s2.bis cross-ref (src/uix/README ->
overview.md), authoring's E1 stratum row (active_architecture ->
docs/architecture/), the related: frontmatter of decisions.md and
canon/recipe-contract.md (THEMING/THEMING_GUIDE -> theming/reference +
guide), and component-audit's typographic-vertebration pointer (eidos
README -> architecture/eidos.md with the translated heading). README
map completed as the book TOC: every chapter now has a row —
theming/motion.md (the model) and theming/changelog.md (the chronicle)
were the two missing. Remaining old-path references live only in
chronicle docs (theming/changelog, process/) and resolve via stubs;
the 11-warn baseline is all foreign targets (MOTION_SERVICE_RFC demo
routes, deleted THEMING_AUDIT/PENDIENTES).
F7.6 complete. The book tree is fully populated: architecture/ (8) +
canon/ (2) + theming/ (7) + rfcs/ (7) + guides/ (4) + decisions/ (2).
Next and last: F7.7 CLAUDE.md thinning — diff to the user first.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
src/uix/eidos/THEMING.md (1499 L, Spanish) translated to English as
docs/theming/reference.md, same s1-s38 numbering: the mental model,
s1.bis (theming lives in eidos — the 2-of-3 derivation and the canonical
split), the CSS layers, the 7 token layers, the 9 roles, the size canon
(universal 1:1 + label step-down + container cap + the icon scale), the
naming conventions, the s7/s8/s9/s13/s15/s17/s18 stubs repointed into the
book (canon/tsc, theming/guide, theming/notes, theming/changelog,
theming/motion), runtime overrides + builders, bundle/purge, validation
tooling, s14 motion (the pickup lift), s16 anti-patterns, s19 variants
canon, and the s20-s38 standing-decision stubs. One internal
reconciliation applied: the s35 stub cited the control/compact/dense size
archetypes that s5 declares superseded by the universal 1:1 — aligned.
One stale v1 DEMO_AUTHORING s12.8 citation in s5 replaced by the v2 s6
parity rule. Stub at the old path carries the full s1-s38 map (the most
sN-cited doc in the repo: code comments, CLAUDE.md, RFCs). Corpus links
swept (CANON, docs map, comparison, glossary, eidos chapter, canon/tsc,
theming/guide + notes). docs:check 0 errors (260 docs).
F7.3 complete: docs/canon/ (tsc, recipe-contract) + docs/theming/
(reference, guide, notes, channels, motion, motion-guide, changelog).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
src/uix/eidos/TSC.md (334 L) and RECIPE_CONTRACT.md (131 L), both Spanish,
translated to English as docs/canon/tsc.md + docs/canon/recipe-contract.md
(the E2 visual canon inside the book tree). Thin stubs at the old paths
(code comments and component-audit R-4.x provenance keep resolving);
corpus links swept (docs map E2 rows, authoring anti-copy law,
building-a-component phase 5, comparison, getting-started, glossary,
eidos chapter). docs:check 0 errors.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>