Skip to content

finding(app-shell): InterfaceListPage prose still teaches an objectDef.titleField rung that #6531 removed #6572

Description

@claude

Two doc comments in packages/app-shell still teach the record-title precedence ladder as containing an object-level objectDef.titleField rung. objectui#6531 removed that rung from getRecordDisplayName (merged as c00bf2861), so the prose now describes a ladder the resolver does not have.

The two sites

packages/app-shell/src/views/InterfaceListPage.tsx:207
* precedence **step 0** — ahead of `objectDef.titleField`, ahead of the
packages/app-shell/src/views/InterfaceListPage.mapConfig.test.tsx:181
* 0** — ahead of `objectDef.titleField`, ahead of the declared `nameField`

Both sit inside a longer explanation of why an author-declared map.titleField reaching getRecordDisplayName as options.titleField is an INVERSION of the old behaviour. That argument still holds; only the middle term of the ladder it cites is gone. Step 0 today is options.titleField, and the object ladder below it starts at the declared nameField — see the docblock on getRecordDisplayName in packages/core/src/utils/record-title.ts.

Why it is worth a card rather than a silent edit

The prose is load-bearing teaching material: it is the passage a reader consults to learn which pointer wins where, and it names a key @objectstack/spec's object schema rejects with unrecognized_keys (the schema is a strictObject). Left as is, the next reader concludes the object-level key is still consulted somewhere, and either adds a consumer-side read back (the AGENTS.md Commandment #0.1 shape) or writes a fixture that carries the key.

Observation only — no behaviour change and no test moves. Filed unassigned by the dev seat working objectui#6557 (session session_011SfZeFWrhGLHmfq61xbz4q), out of a file face that did not include InterfaceListPage. The drift comes from objectui#6531, not from objectui#6557.

Duplicate scan before filing

241 open objectui issues enumerated via the REST list endpoint (3 pages, page 3 short — a full population, not a truncated read) and grepped over title + body for titleField / InterfaceListPage / getMapConfig / record-title / stale-prose wording. Hits: objectui#6557 (this finding's parent card, positive control), objectui#6558 (a dead getRecordDisplayName copy in apps/console — a different artifact), plus objectui#2890, objectui#6475, objectui#6342, objectui#5887, objectui#5144, objectui#4043 — none of them is about this prose.

Refs: objectui#6531 (the removal) · objectui#6557 (the consumer-side convergence) · objectui#5953 (the ObjectMap forge removal the passage is really about).


Generated by Claude Code


Generated by Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    domain:uiobjectui ui stream: fix lands on the published library or apps — objectui execution seatpm:queue

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions