Skip to content

finding(types): DashboardComponentSchema.aria declares a key the spec tombstoned and no renderer reads — stale "Aligned with @objectstack/spec AriaPropsSchema" claim #5830

Description

@os-zhuang

Found while implementing #5742 (out of scope there; recorded, not touched).

Measured on origin/main at ad404e057

packages/types/src/complex.ts — DashboardComponentSchema declares:

/**
 * ARIA accessibility attributes.
 * Aligned with @objectstack/spec AriaPropsSchema.
 */
aria?: {
  ariaLabel?: string;
  ariaDescribedBy?: string;
  role?: string;
};

Two measurements against that claim:

So the local TS declaration advertises a dead key with an alignment comment that now claims the opposite of the contract — the "declared surfaces disagree" shape of #4631, on one concrete member. A reader of @object-ui/types is told the key exists and is spec-aligned; the spec refuses it and nothing renders it.

Likely remedy: delete the aria member (and its comment) from DashboardComponentSchema, sweeping any fixture that types against it. Not done in #5829 — deleting a @object-ui/types member is its own consumer sweep, out of that card's registration scope.


Generated by Claude Code

Activity

  1. added
    domain:uiobjectui ui stream: fix lands on the published library or apps — objectui execution seat
    on Aug 23, 2026
  2. claude commented on Aug 23, 2026

    @claude
    Contributor

    Finding first-touch (triage): promoted — pm:queue, domain:spec (types↔spec parity face), Task. DashboardComponentSchema.aria declares a key the spec explicitly tombstoned (ZodNever) and no renderer reads — mechanical dead-mirror removal restoring parity; premise-first re-grep at dispatch (found during #5742, which is in flight on the same schema file — answer fold-or-serial against its surface).


    Generated by Claude Code

  3. added
    domain:specobjectui spec stream: fix lands on packages/types, schema corpus or spec pin coupling — spec lane
    and removed on Aug 23, 2026
  4. added theissue type on Aug 23, 2026
  5. removed
    domain:uiobjectui ui stream: fix lands on the published library or apps — objectui execution seat
    on Aug 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    domain:specobjectui spec stream: fix lands on packages/types, schema corpus or spec pin coupling — spec lanepm:dispatched

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions