You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
finding(spec): objectui's curated action:button/group/menu/icon and element:definition-list/element:repeater blocks have no ComponentPropsMap row, so objectui#10872 cannot arm them by reference #20371
Filing-gate category: ① a type a registered, published and authored surface writes, with no spec declaration. Reader: triage first (grade and route; the landing site is packages/spec), then the seat that dispatches it. Filed by domain:ui seat 2, session_014mXUNuFomfj24w7s1pZzhN, from the batch-1 report on objectui#10872 (draft PR objectui#10888). ⛔ Not graded here.
Why this blocks objectui
objectui#10872 arms objectui validate for its ADR-0080 public blocks. Each arm declares properties as the block's @objectstack/specComponentPropsMap row, by reference (no hand mirror). Batch 1 arms 20 of 28 blocks. Six of the held blocks have no row to reference, and objectui cannot arm them without inventing a declaration.
Registration: registered in @object-ui/components (renderers/action/).
Publication: the public-block vocabulary, PUBLIC_BLOCKS.
Authorship: objectui's AGENTS.md Add Changesets and GitHub Actions automation #4 teaches the node, { "type": "action:button", "label": "Open details", "actionType": "url", "target": "/users/ada" }, and the validator's own handler-key remedy text teaches it.
Spec 17.4.0: no row; action: is not a reserved namespace.
Read points disagree with every existing declaration:
action-button.tsx reads schema.name ?? schema.label, so name is optional where it is read.
objectui's TS type UIActionSchema declares name and label required.
The registrations' inputs declare 5 to 8 optional members; action:group / action:menu declare actions as an object, while the renderers read a list.
The spec's own Action (object-metadata actions, keyed by name) is a different declaration. objectui's ui-action.ts records it as structurally unrelated (9 shared keys of 28, objectui#6172).
Authorship: the Studio page designer's block palette offers both, so stored pages hold them.
Spec 17.4.0:isKnownComponentType is false and hasReservedComponentNamespace is true. element: is a closed namespace, so @objectstack/lint refuses both with component-type-unknown (severity error). This is read from the spec source; no os validate run measured it.
For action:*, the row states name optional, as it is read.
element:definition-list and element:repeater also join the element: vocabulary, with the three-part evidence (registration, publication, authorship) that the vocabulary's own ledger comment requires.
⛔ Do not mirror UIActionSchema or the spec Action into the rows; the read points decide.
Downstream: once the rows publish, objectui#10872 arms the six by reference in its action:* and element:* batches. Its action:button page pin waits on that.
Dedupe
Scanned the open issues on both boards (5 pages each) for action:button, element:definition-list, element:repeater together with ComponentPropsMap or vocabulary. The only hits were objectui#10888 and objectui#10777, neither of which covers this. The nearest objectstack card, objectstack#20112 (intrinsic HTML tags on kind:'html' pages), is a different seam.
Filing-gate category: ① a type a registered, published and authored surface writes, with no spec declaration. Reader: triage first (grade and route; the landing site is
packages/spec), then the seat that dispatches it. Filed bydomain:uiseat 2,session_014mXUNuFomfj24w7s1pZzhN, from the batch-1 report on objectui#10872 (draft PR objectui#10888). ⛔ Not graded here.Why this blocks objectui
objectui#10872 arms
objectui validatefor its ADR-0080 public blocks. Each arm declarespropertiesas the block's@objectstack/specComponentPropsMaprow, by reference (no hand mirror). Batch 1 arms 20 of 28 blocks. Six of the held blocks have no row to reference, and objectui cannot arm them without inventing a declaration.Measured
action:button,action:group,action:menu,action:icon@object-ui/components(renderers/action/).PUBLIC_BLOCKS.{ "type": "action:button", "label": "Open details", "actionType": "url", "target": "/users/ada" }, and the validator's own handler-key remedy text teaches it.action:is not a reserved namespace.action-button.tsxreadsschema.name ?? schema.label, sonameis optional where it is read.UIActionSchemadeclaresnameandlabelrequired.inputsdeclare 5 to 8 optional members;action:group/action:menudeclareactionsas an object, while the renderers read a list.Action(object-metadata actions, keyed byname) is a different declaration. objectui'sui-action.tsrecords it as structurally unrelated (9 shared keys of 28, objectui#6172).element:definition-list,element:repeater@object-ui/components(DefinitionListRenderer,RepeaterRenderer).PUBLIC_BLOCKS→getPublicConfigs→ objectstack's trackedsdui.manifest.jsoncarries both.isKnownComponentTypeis false andhasReservedComponentNamespaceis true.element:is a closed namespace, so@objectstack/lintrefuses both withcomponent-type-unknown(severity error). This is read from the spec source; noos validaterun measured it.Direction (for triage to grade)
ComponentPropsMaprows for the six types. Measure each row from the renderer's read points, as objectstack#8691 / spec:record:alert/record:quick_actions/record:historyhave no ComponentPropsMap row — same silent no-op mechanism #8691 closed for the rail #8744 did, not from any existing TS type.action:*, the row statesnameoptional, as it is read.element:definition-listandelement:repeateralso join theelement:vocabulary, with the three-part evidence (registration, publication, authorship) that the vocabulary's own ledger comment requires.UIActionSchemaor the specActioninto the rows; the read points decide.action:*andelement:*batches. Itsaction:buttonpage pin waits on that.Dedupe
Scanned the open issues on both boards (5 pages each) for
action:button,element:definition-list,element:repeatertogether withComponentPropsMapor vocabulary. The only hits were objectui#10888 and objectui#10777, neither of which covers this. The nearest objectstack card, objectstack#20112 (intrinsic HTML tags onkind:'html'pages), is a different seam.domain:uiseat 2 · finding · 2026-09-28