Filed by the triage seat while closing #15180, whose premise this replaces.
What #15180 got right, inverted
#15180 concluded that objects.<object>._views.<view>.description was 「declared, accepted, read by nothing」. The key is read — server-side, and the resolved value reaches the screen. What is actually stale is the prose describing the convention, which names a client-side symbol that no longer exists.
⇒ The trap inverted: the declaration is true, the documentation about it is false, and a reader who checks the documentation concludes the declaration is dead. That is what cost #15180 a dispatch round.
The site
packages/cli/src/utils/i18n-extract.ts:363, verbatim on origin/main:
* reads (\viewLabel` / `viewDescription` / `viewEmptyState` in`
naming @object-ui/i18n symbols that objectui#7219 retired — it removed useObjectLabel().viewDescription(), the client-side second resolution.
⚠️ A second candidate site, ⛔ not yet judged
viewDescription appears in exactly three places on origin/main (measured; the count is small enough to enumerate rather than sample):
| site |
verdict |
packages/cli/src/utils/i18n-extract.ts (1) |
this card — stale prose |
packages/console/CHANGELOG.md (2) |
⛔ historical record; leave it |
packages/lint/src/validate-translation-references.ts (1) |
⚠️ NOT JUDGED — read it before deciding. If it is a live reference the lint rule depends on, ⛔ leave it; if it is the same stale naming, fix it here. |
⛔ Do not assume the lint site is stale because the CLI site is. Read it.
What the correct prose must say
The convention is live and resolved by the server: resolveViewDescription (packages/spec/src/system/i18n-resolver.ts:424), called at :908, registered in METADATA_DOCUMENT_TRANSLATORS (:987) from which TRANSLATABLE_METADATA_TYPES is derived (:1009) and read by @objectstack/rest. ⇒ Describe the server-side resolver, ⛔ not a retired browser-side helper.
Lane
packages/cli ⇒ domain:cli.
⚠️ Same file as #17511 (walkScreenFlows is region-blind, domain:cli, p2, graded this shift). ⇒ Different defect, one file face — ⛔ do not dispatch both at once, and whoever takes either should fix both in that worktree if the second is a small consequence, declaring it in the PR.
Refs: #15180 · #17511 · objectui#7219
Generated by Claude Code
Filed by the triage seat while closing #15180, whose premise this replaces.
What #15180 got right, inverted
#15180 concluded that
objects.<object>._views.<view>.descriptionwas 「declared, accepted, read by nothing」. The key is read — server-side, and the resolved value reaches the screen. What is actually stale is the prose describing the convention, which names a client-side symbol that no longer exists.⇒ The trap inverted: the declaration is true, the documentation about it is false, and a reader who checks the documentation concludes the declaration is dead. That is what cost #15180 a dispatch round.
The site
packages/cli/src/utils/i18n-extract.ts:363, verbatim onorigin/main:naming
@object-ui/i18nsymbols that objectui#7219 retired — it removeduseObjectLabel().viewDescription(), the client-side second resolution.viewDescriptionappears in exactly three places onorigin/main(measured; the count is small enough to enumerate rather than sample):packages/cli/src/utils/i18n-extract.ts(1)packages/console/CHANGELOG.md(2)packages/lint/src/validate-translation-references.ts(1)⛔ Do not assume the lint site is stale because the CLI site is. Read it.
What the correct prose must say
The convention is live and resolved by the server:
resolveViewDescription(packages/spec/src/system/i18n-resolver.ts:424), called at:908, registered inMETADATA_DOCUMENT_TRANSLATORS(:987) from whichTRANSLATABLE_METADATA_TYPESis derived (:1009) and read by@objectstack/rest. ⇒ Describe the server-side resolver, ⛔ not a retired browser-side helper.Lane
packages/cli⇒domain:cli.walkScreenFlowsis region-blind,domain:cli, p2, graded this shift). ⇒ Different defect, one file face — ⛔ do not dispatch both at once, and whoever takes either should fix both in that worktree if the second is a small consequence, declaring it in the PR.Refs: #15180 · #17511 · objectui#7219
Generated by Claude Code