Provenance: maintainer ruling 2026-08-31 (director seat summon #7, decision batch #15, verbatim 「同意」 on #12824's presented recommendation "C 立即 + D 立项"). Filed by the director seat, session session_01KGtaLpkW1mycWgkbSb3H6t. ⛔ Ruling recorded on #12824; this card is the spec half of option D.
What is needed
packages/spec/authorable-surface.base.json keys the authorable surface as container:property using spec registry names (data/Object:userActions, data/Datasource:schemaMode). scripts/docs-audit/affected-docs.mjs sees TS declaration names (ObjectSchemaBase, DatasourceDef) when it mints an anchor from the declaration enclosing a changed line. No lookup between the two exists today; gen:schema necessarily knows the mapping (it generates the registry from those declarations).
Deliverable: a generated artifact mapping the TS declaration names of authorable containers to their spec registry names, produced by the existing spec generation chain and covered by check:generated (same regime as the other 14 artifacts — never hand-edited).
⚠️ First deliverable is a COST ESTIMATE, not code
The ruling funds D on the condition its cost becomes a number first (#12824's own blocker note: "real work on the spec generator, not a tweak to the docs script", and the honest label for the −17.4% projection is a projection). Post a rough estimate on this card before implementing; if it comes out large, report back to the decision box instead of building.
Executable criterion
node -e "const m=require('./packages/spec/<artifact>'); console.log(m['ObjectSchemaBase'])" (path per implementation) prints data/Object; check:generated covers the artifact.
Consumer
The docs-audit half of option D (its own card, Blocked-by: this one) qualifies data-property anchors by declaring container against the registry, dropping internal-container noise while preserving the two measured true positives (userActions → data-modeling/objects.mdx, schemaMode → data-modeling/drivers.mdx).
Refs: #12824 (the ruled decision card) · #13306 (oracle re-derivation) · #11434 (the container face of the same root, reproduces today).
Provenance: maintainer ruling 2026-08-31 (director seat summon #7, decision batch #15, verbatim 「同意」 on #12824's presented recommendation "C 立即 + D 立项"). Filed by the director seat, session
session_01KGtaLpkW1mycWgkbSb3H6t. ⛔ Ruling recorded on #12824; this card is the spec half of option D.What is needed
packages/spec/authorable-surface.base.jsonkeys the authorable surface ascontainer:propertyusing spec registry names (data/Object:userActions,data/Datasource:schemaMode).scripts/docs-audit/affected-docs.mjssees TS declaration names (ObjectSchemaBase,DatasourceDef) when it mints an anchor from the declaration enclosing a changed line. No lookup between the two exists today;gen:schemanecessarily knows the mapping (it generates the registry from those declarations).Deliverable: a generated artifact mapping the TS declaration names of authorable containers to their spec registry names, produced by the existing spec generation chain and covered by
check:generated(same regime as the other 14 artifacts — never hand-edited).The ruling funds D on the condition its cost becomes a number first (#12824's own blocker note: "real work on the spec generator, not a tweak to the docs script", and the honest label for the −17.4% projection is a projection). Post a rough estimate on this card before implementing; if it comes out large, report back to the decision box instead of building.
Executable criterion
node -e "const m=require('./packages/spec/<artifact>'); console.log(m['ObjectSchemaBase'])"(path per implementation) printsdata/Object;check:generatedcovers the artifact.Consumer
The docs-audit half of option D (its own card,
Blocked-by:this one) qualifies data-property anchors by declaring container against the registry, dropping internal-container noise while preserving the two measured true positives (userActions→data-modeling/objects.mdx,schemaMode→data-modeling/drivers.mdx).Refs: #12824 (the ruled decision card) · #13306 (oracle re-derivation) · #11434 (the container face of the same root, reproduces today).