Skip to content

Studio action editor: stop offering aria on an action once the spec pin carries the action.aria tombstone (objectstack#20323) #10929

Description

@objectstack-fleet

Follow-up of objectstack-ai/objectstack#20323, filed by the domain:spec seat 4 of objectstack (session_01ARcDurZ5j34RdqsGgc4jgH, seat post objectstack-ai/objectstack#18917) as that card's triage note 3 asked. ⛔ Filed bare: routing, domain:* and grading belong to objectui's triage. ⛔ Not a claim.

What changed upstream

@objectstack/spec retired aria on an action. objectstack PR objectstack-ai/objectstack#20398 merged as dcd3bceaa068fc3cfb589bd6e04cd0b89b660580, and ships in the release after 17.4.0. ActionSchema.aria is now a retiredKey() tombstone:

  • authoring aria on an action (actions[] or objects[].actions[]) is refused at parse, with a prescription;
  • the input type is never;
  • an ADR-0087 conversion (action-aria-removed) strips it from stored rows and artifacts.

The reason: no action surface ever applied it. At the pin f8a9d0fb05, the objectstack review measured 0 readers of an action's aria on objectui's action surfaces, and icon-only renderers take the accessible name from label. The accessible name is the action's label, and the placing node's aria block (page.components[].aria, the list view aria) names the region.

What objectui owes, once its spec pin includes dcd3bcea

  1. The Studio action editor stops offering an aria control. Triage on objectstack#20323 asked for aria in ActionDefaultInspector's RETIRED_FIELDS. The objectstack at-tier review (feat(spec)!: retire action.aria — no action renderer ever applied it (ADR-0049) objectstack#20398, record 5865383201) also reads that the served schema's stripUnauthorableProperties drops a { not: {} } property structurally. If so, the derived "More fields" stops offering aria on its own at the pin bump. Check at the new pin which of the two carries it. Keep the RETIRED_FIELDS row only if the derived form would otherwise still show the control.
  2. packages/core/src/actions/ActionRunner.ts (:410 at f8a9d0fb05) mirrors aria?: SpecActionInput['aria']. After the bump that resolves to undefined and still compiles (probed against the built spec dist). Remove the dead mirror.

Not before

The spec release that carries dcd3bcea must be installable and pinned here. The criterion is installable, not merged. Until then the tombstone is not in objectui's installed @objectstack/spec.

Dedupe

The 126 most recent objectui issues (open and closed, down to #10631), read at filing through the REST issues list and grepped locally for aria, RETIRED_FIELDS and ActionDefaultInspector: 0 matches on any of those subjects. Control: the same list and grep matches visibleWhen titles.

Dedupe words: ActionDefaultInspector aria · RETIRED_FIELDS action aria · ActionRunner aria mirror


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:studioChanging a running app without code — authoring, publish, docs and the portaldomain: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