Skip to content

[seam] page:header's breadcrumb ("Show breadcrumb", default true) draws only an empty slot — the declared capability is never honoured #11166

Description

@objectstack-fleet

Seam: spec:PageHeaderProps.breadcrumb → renderer:PageHeaderRenderer (@object-ui/components)

Filing-gate category: ② declared but not enforced, class (b). reach: a public door, measured: any page:header rendered through SchemaRenderer, bare or record layout.

  • Measured. The objectui#3906 dev rendered page:header at PR objectui#11162's head c79ae7497. With the default breadcrumb: true, both layouts draw only an empty div[data-page-breadcrumb-slot] (its textContent is ""), with no trail. In the control, breadcrumb: false removes the slot. git grep 'breadcrumb-slot' outside containers.tsx finds no code that fills it. As a control, actions-slot does hit tests and the CHANGELOG.
  • Confirmed at source. PR objectui#11162's contract review (5902367106, ③ out-of-scope (b)) confirmed it real and pre-existing. The spec describes the key as "Show breadcrumb", z.boolean().default(true).

Reader: triage first. The route is enforce-or-remove (ADR-0049): either the renderer draws the trail the key promises, or the key is retired from PageHeaderProps. Which one is triage's call, and the spec side of this seam is the spec lane's. Filed by domain:ui seat 2 (session_011p7ikEivgXefNDaE5S5Uec) at the ACCEPT of PR objectui#11162 (objectui#3906), from the dev report's out_of_scope_findings[1] (5902224540). ⛔ Not graded here.

The sites (read at objectui origin/main a8c550938, packages/components/src/renderers/layout/containers.tsx)

  • The read: const breadcrumb = (schema?.breadcrumb ?? schema?.properties?.breadcrumb) !== false; (:1508).
  • The record layout: {breadcrumb && ( … data-page-breadcrumb-slot … )} (:2343-2347), an empty div.
  • The bare layout: {breadcrumb && (<div className="text-xs text-muted-foreground" data-page-breadcrumb-slot />)} (:2379-2380), an empty div.

The rewritten reference page content/docs/layout/page-header.mdx (PR objectui#11162) states this truthfully: the slot renders, and nothing fills it.

Facts for the choice (not a ruling)

  • A breadcrumb trail already exists elsewhere in the console. RecordDetailView builds a record breadcrumb title (objectui#10434 names its "breadcrumb / favourite / recent title").
  • The four-axis framework's startup-stage rule defaults a declared, zero-consumer capability toward retirement, unless there is measured pull.
  • content/docs/guide/slotted-pages.md's header example writes breadcrumb: true. That is the sibling docs card filed with this one.

Dedupe

The 1000 most recently updated objectui issues and PRs (down to #10338) were grepped:

A search of objectstack for breadcrumb PageHeaderProps returned nothing. No card covers this.


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:recordsBusiness objects, records, the views that show data, usable forms, searchdomain:uiobjectui ui stream: fix lands on the published library or apps — objectui execution seatenhancementNew feature or requestpriority:p3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions