From 54612db0a0614fc714cea87c477f2cb3ed85adba Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 24 Sep 2026 23:44:02 +0000 Subject: [PATCH 1/3] docs(types): the content-channel tombstones state the BaseSchema premise in the tense it is true 146 per-component docblocks in packages/types/src justified their `body` / `children` tombstone with "`body` and `children` are inherited-and-optional from BaseSchema, whose own docblock admits ..." (137) or its single-key sibling "`body` is inherited-and-optional from BaseSchema, whose own docblock admits ..." (9, line-wrapped so a line-bound grep of the phrase misses them). Since objectui#6771 `BaseSchema.body` is `never` and BaseSchema's docblock no longer admits the two-spelling ambiguity, so the present-tense opening clause was false while the rest of each paragraph was true as history. Each paragraph now dates the inherited-and-optional state to before its own tombstone card (objectui#9256 / objectui#8284) and states the present: the base refuses `body` itself, and (for the neither-channel family) still declares `children`, which this node's tombstone refuses. Comment text only; no declaration, member, type or export moves. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_014mXUNuFomfj24w7s1pZzhN --- packages/types/src/ai.ts | 84 ++++--- packages/types/src/complex.ts | 154 +++++++----- packages/types/src/data-display.ts | 280 ++++++++++++--------- packages/types/src/disclosure.ts | 84 ++++--- packages/types/src/feedback.ts | 224 ++++++++++------- packages/types/src/form.ts | 390 ++++++++++++++++------------- packages/types/src/layout.ts | 259 ++++++++++--------- packages/types/src/navigation.ts | 140 ++++++----- packages/types/src/objectql.ts | 56 +++-- packages/types/src/overlay.ts | 252 +++++++++++-------- packages/types/src/reports.ts | 28 ++- packages/types/src/views.ts | 84 ++++--- 12 files changed, 1159 insertions(+), 876 deletions(-) diff --git a/packages/types/src/ai.ts b/packages/types/src/ai.ts index 50189d910a..2f814d3076 100644 --- a/packages/types/src/ai.ts +++ b/packages/types/src/ai.ts @@ -201,12 +201,14 @@ export interface AIFormAssistSchema extends BaseSchema { * the props bag `SchemaRenderer` spreads rather than from `schema.*`, and * carries zero `body` / `children` reads either way. * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `ai-form-assist` reads — nothing renders it. */ @@ -225,12 +227,14 @@ export interface AIFormAssistSchema extends BaseSchema { * the props bag `SchemaRenderer` spreads rather than from `schema.*`, and * carries zero `body` / `children` reads either way. * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `ai-form-assist` reads — nothing renders it. */ @@ -384,12 +388,14 @@ export interface AIRecommendationsSchema extends BaseSchema { * the props bag `SchemaRenderer` spreads rather than from `schema.*`, and * carries zero `body` / `children` reads either way. * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `ai-recommendations` reads — nothing renders it. */ @@ -408,12 +414,14 @@ export interface AIRecommendationsSchema extends BaseSchema { * the props bag `SchemaRenderer` spreads rather than from `schema.*`, and * carries zero `body` / `children` reads either way. * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `ai-recommendations` reads — nothing renders it. */ @@ -549,12 +557,14 @@ export interface NLQuerySchema extends BaseSchema { * the props bag `SchemaRenderer` spreads rather than from `schema.*`, and * carries zero `body` / `children` reads either way. * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `nl-query` reads — nothing renders it. */ @@ -573,12 +583,14 @@ export interface NLQuerySchema extends BaseSchema { * the props bag `SchemaRenderer` spreads rather than from `schema.*`, and * carries zero `body` / `children` reads either way. * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `nl-query` reads — nothing renders it. */ diff --git a/packages/types/src/complex.ts b/packages/types/src/complex.ts index 568fb62175..aa400c43c2 100644 --- a/packages/types/src/complex.ts +++ b/packages/types/src/complex.ts @@ -442,12 +442,14 @@ export interface CalendarViewSchema extends BaseSchema { * `titleField` (in * `packages/plugin-calendar/src/calendar-view-renderer.tsx`). * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `calendar-view` reads — nothing renders it. */ @@ -467,12 +469,14 @@ export interface CalendarViewSchema extends BaseSchema { * `titleField` (in * `packages/plugin-calendar/src/calendar-view-renderer.tsx`). * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `calendar-view` reads — nothing renders it. */ @@ -632,12 +636,14 @@ export interface FilterBuilderSchema extends BaseSchema { * `fields`, `label`, `name`, `value`, `wrapperClass` (in * `packages/components/src/renderers/complex/filter-builder.tsx`). * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `filter-builder` reads — nothing renders it. */ @@ -656,12 +662,14 @@ export interface FilterBuilderSchema extends BaseSchema { * `fields`, `label`, `name`, `value`, `wrapperClass` (in * `packages/components/src/renderers/complex/filter-builder.tsx`). * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `filter-builder` reads — nothing renders it. */ @@ -848,12 +856,14 @@ export interface CarouselSchema extends BaseSchema { * `itemClassName`, `items`, `opts`, `orientation`, `showArrows` (in * `packages/components/src/renderers/complex/carousel.tsx`). * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `carousel` reads — nothing renders it. */ @@ -872,12 +882,14 @@ export interface CarouselSchema extends BaseSchema { * `itemClassName`, `items`, `opts`, `orientation`, `showArrows` (in * `packages/components/src/renderers/complex/carousel.tsx`). * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `carousel` reads — nothing renders it. */ @@ -1592,12 +1604,14 @@ export interface ChatbotSchema extends BaseSchema { * `systemPrompt`, `userAvatarFallback`, `userAvatarUrl` (in * `packages/plugin-chatbot/src/renderer.tsx`). * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `chatbot` reads — nothing renders it. */ @@ -1741,12 +1755,14 @@ export interface ChatbotEnhancedSchema * `streamingEnabled`, `surface`, `systemPrompt`, `userAvatarFallback`, * `userAvatarUrl` (in `packages/plugin-chatbot/src/renderer.tsx`). * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `chatbot-enhanced` reads — nothing renders it. */ @@ -1855,12 +1871,14 @@ export interface ChatbotFloatingSchema * `systemPrompt`, `userAvatarFallback`, `userAvatarUrl` (in * `packages/plugin-chatbot/src/renderer.tsx`). * - * `body` and `children` are inherited-and-optional from {@link BaseSchema}, - * whose own docblock admits "some components use `children` instead of - * `body`" without saying which — so authoring either here type-checked, - * parsed green through `.passthrough()`, and rendered NOTHING: no error, no - * warning, no element. `SchemaRenderer` strips both keys out of the props bag - * it spreads, so neither reaches the component by another route either. + * Before objectui#9256 tombstoned them here, `body` and `children` were both + * inherited-and-optional from {@link BaseSchema} — so authoring either here + * type-checked, parsed green through `.passthrough()`, and rendered NOTHING: + * no error, no warning, no element. objectui#6771 has since retired `body` on + * `BaseSchema` itself; `BaseSchema` still declares `children`, so this node's + * own tombstone is what refuses it here. `SchemaRenderer` strips both keys + * out of the props bag it spreads, so neither reaches the component by + * another route either. * * @deprecated Not a channel `chatbot-floating` reads — nothing renders it. */ @@ -2369,12 +2387,14 @@ export interface DashboardComponentSchema extends BaseSchema, Omit Date: Thu, 24 Sep 2026 23:45:25 +0000 Subject: [PATCH 2/3] chore(changeset): declare the tombstone-docblock premise correction as a @object-ui/types patch The rewritten docblocks are on exported members and reach the emitted .d.ts, so the package ships changed bytes (check-changeset-presence.mjs header, "Comment text in src DOES reach a published .d.ts"). Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_014mXUNuFomfj24w7s1pZzhN --- .changeset/9933-stale-baseschema-premise-docblocks.md | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .changeset/9933-stale-baseschema-premise-docblocks.md diff --git a/.changeset/9933-stale-baseschema-premise-docblocks.md b/.changeset/9933-stale-baseschema-premise-docblocks.md new file mode 100644 index 0000000000..87e559b6f0 --- /dev/null +++ b/.changeset/9933-stale-baseschema-premise-docblocks.md @@ -0,0 +1,11 @@ +--- +'@object-ui/types': patch +--- + +Correct a stale premise in the published declaration docs of the content-channel tombstones (objectui#9933). + +The `body?: never` / `children?: never` docblocks of the components that read neither content channel (objectui#9256), and the `body?: never` docblocks of the components that read `children` (objectui#8284: `box`, `span`, `container`, `flex`, `stack`, `grid`, `scroll-area`, `form`, `toggle`), justified each tombstone by saying that `body` (and `children`) "are inherited-and-optional from `BaseSchema`, whose own docblock admits 'some components use `children` instead of `body`'". Since objectui#6771 retired the `body` spelling, that opening clause is false in the present tense: `BaseSchema.body` is `never`, and `BaseSchema`'s own docblock no longer admits the two-spelling ambiguity. These docblocks ship in the emitted `.d.ts`, so a declarations reader was taught the premise the retirement removed. + +Each paragraph now dates the inherited-and-optional state to before its own tombstone and states the present: `BaseSchema` refuses `body` itself and still declares `children`, which the neither-channel tombstone refuses. The rest of each docblock — what the renderer reads, how that was measured, and the `@deprecated` remedy — is unchanged. + +Comment text only: no declaration, member, type or export moves, and every authored document type-checks and parses exactly as it did before. From f30b2c827a89c48188b54dd4c4f30fbf3b87a563 Mon Sep 17 00:00:00 2001 From: Claude Date: Thu, 24 Sep 2026 23:50:30 +0000 Subject: [PATCH 3/3] chore(changeset): describe the stale premise without re-publishing its sentence The first draft quoted the stale clause verbatim, so the tree-wide phrase instrument used to measure this change kept firing on the changeset that reports its removal. Paraphrased; the claim is unchanged. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_014mXUNuFomfj24w7s1pZzhN --- .changeset/9933-stale-baseschema-premise-docblocks.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/9933-stale-baseschema-premise-docblocks.md b/.changeset/9933-stale-baseschema-premise-docblocks.md index 87e559b6f0..1c4d0c7333 100644 --- a/.changeset/9933-stale-baseschema-premise-docblocks.md +++ b/.changeset/9933-stale-baseschema-premise-docblocks.md @@ -4,7 +4,7 @@ Correct a stale premise in the published declaration docs of the content-channel tombstones (objectui#9933). -The `body?: never` / `children?: never` docblocks of the components that read neither content channel (objectui#9256), and the `body?: never` docblocks of the components that read `children` (objectui#8284: `box`, `span`, `container`, `flex`, `stack`, `grid`, `scroll-area`, `form`, `toggle`), justified each tombstone by saying that `body` (and `children`) "are inherited-and-optional from `BaseSchema`, whose own docblock admits 'some components use `children` instead of `body`'". Since objectui#6771 retired the `body` spelling, that opening clause is false in the present tense: `BaseSchema.body` is `never`, and `BaseSchema`'s own docblock no longer admits the two-spelling ambiguity. These docblocks ship in the emitted `.d.ts`, so a declarations reader was taught the premise the retirement removed. +The `body?: never` / `children?: never` docblocks of the components that read neither content channel (objectui#9256), and the `body?: never` docblocks of the components that read `children` (objectui#8284: `box`, `span`, `container`, `flex`, `stack`, `grid`, `scroll-area`, `form`, `toggle`), justified each tombstone with a present-tense premise: that `body` (and `children`) are inherited-and-optional from `BaseSchema`, and that `BaseSchema`'s own docblock concedes the two spellings without saying which component reads which. Since objectui#6771 retired the `body` spelling, that premise is false: `BaseSchema.body` is `never`, and `BaseSchema`'s own docblock no longer admits the two-spelling ambiguity. These docblocks ship in the emitted `.d.ts`, so a declarations reader was taught the premise the retirement removed. Each paragraph now dates the inherited-and-optional state to before its own tombstone and states the present: `BaseSchema` refuses `body` itself and still declares `children`, which the neither-channel tombstone refuses. The rest of each docblock — what the renderer reads, how that was measured, and the `@deprecated` remedy — is unchanged.