Measured on maine307c9896 while executing the objectui#6121 retirement, in the
same file and the same fenced example.
content/docs/core/report-schema.mdx's Report Builder example still authors two
keys the published contract now refuses by name:
const builder: ReportBuilderSchema = {
type: 'report-builder',
...
showPreview: true,
onSave: 'handleSaveReport',
onCancel: 'handleCancel'
};
ReportBuilderSchema.onSave / .onCancel became ?: never on the TypeScript face
and handlerKeyRefusal(...) arms on the zod mirror when PR #7468 landed
(objectui#7344, in the objectui#6124 shape; the maintainer ruling of 2026-08-25 that
the handler-expression string dialect is not a supported authoring form). So the page
teaches a literal that is a tsc error to assign AND a named safeParse refusal —
packages/types/src/__tests__/phase2-schemas.test.ts pins exactly that refusal, and
handler-keys-string-any-mirrors-7344.test.ts cites THIS page's onSave: 'handleSaveReport' as the corpus source of the retired dialect.
Why no gate reports it
The block is a plaintext fence: check:doc-snippets compiles ts/tsx fences
only, check:doc-types reads type string literals, and
component-docs-retired-handler-keys-7340.test.ts — the pin objectui#7340 landed for
exactly this class — measures doc property-table ROWS, not example object literals.
Three instruments, all green, none of them looking at this line. It is the
objectui#5044 class: a snippet teaching a contract error under a green gate.
Suggested remedy
Drop the two lines from the example (the disposition objectui#7340 chose for seven of
its eight pages), or replace them with the node-type spelling PR #6498 established.
Widening the #7340 pin from table rows to example literals would close the class
rather than this instance, and is the more valuable half — but it is its own
measurement and belongs to whoever takes it, not to a one-line docs edit.
Why this was not folded into the PR that found it
The objectui#6121 dispatch fences that card to its own ruling: 「⛔ Do not fold in
neighbouring report-schema work that is not this ruling.」 This is PR #7468's residue,
not that ruling, so it is filed rather than fixed. Deduped first against the closed
objectui#7340 / objectui#7239 family and the objectui#5047 plugin-report docs card:
none of them covers an example literal on this page.
Found by an execution seat while landing objectui#6121, session
session_01EMrWaQw3XS5DxTHxp4yRyC. Generated by Claude Code.
Generated by Claude Code
Measured on
maine307c9896while executing the objectui#6121 retirement, in thesame file and the same fenced example.
content/docs/core/report-schema.mdx's Report Builder example still authors twokeys the published contract now refuses by name:
ReportBuilderSchema.onSave/.onCancelbecame?: neveron the TypeScript faceand
handlerKeyRefusal(...)arms on the zod mirror when PR #7468 landed(objectui#7344, in the objectui#6124 shape; the maintainer ruling of 2026-08-25 that
the handler-expression string dialect is not a supported authoring form). So the page
teaches a literal that is a
tscerror to assign AND a namedsafeParserefusal —packages/types/src/__tests__/phase2-schemas.test.tspins exactly that refusal, andhandler-keys-string-any-mirrors-7344.test.tscites THIS page'sonSave: 'handleSaveReport'as the corpus source of the retired dialect.Why no gate reports it
The block is a
plaintextfence:check:doc-snippetscompilests/tsxfencesonly,
check:doc-typesreadstypestring literals, andcomponent-docs-retired-handler-keys-7340.test.ts— the pin objectui#7340 landed forexactly this class — measures doc property-table ROWS, not example object literals.
Three instruments, all green, none of them looking at this line. It is the
objectui#5044 class: a snippet teaching a contract error under a green gate.
Suggested remedy
Drop the two lines from the example (the disposition objectui#7340 chose for seven of
its eight pages), or replace them with the node-type spelling PR #6498 established.
Widening the #7340 pin from table rows to example literals would close the class
rather than this instance, and is the more valuable half — but it is its own
measurement and belongs to whoever takes it, not to a one-line docs edit.
Why this was not folded into the PR that found it
The objectui#6121 dispatch fences that card to its own ruling: 「⛔ Do not fold in
neighbouring report-schema work that is not this ruling.」 This is PR #7468's residue,
not that ruling, so it is filed rather than fixed. Deduped first against the closed
objectui#7340 / objectui#7239 family and the objectui#5047 plugin-report docs card:
none of them covers an example literal on this page.
Found by an execution seat while landing objectui#6121, session
session_01EMrWaQw3XS5DxTHxp4yRyC. Generated by Claude Code.Generated by Claude Code