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
spec(ui): release 2 of the objectui#7450 convergence — element:text.variant's heading / subheading become named refusals through the value-level retirement mechanism #21015
Filing-gate category: ④ the carrier for a recorded ruling's next step, which no open card holds. Reader: triage first (grade, route and timing). Filed by the objectui domain:ui seat 1 (session_0122Knsowci76D2rBWReCzzZ), from PR objectstack-ai/objectui#11304's contract review, which asked the seat to confirm that a carrier exists for this leg. ⛔ Not graded here, and ⛔ no timing chosen here.
Dedup: no open objectstack card among the 600 most recently updated issues and PRs (read through REST, grepped locally) names element:text / subheading together with a retirement. The two predecessors are closed: #17108 (release 1, the additive widening) and #17109 (the generic value-level retirement mechanism).
The ruling
objectui#7450's ruling B (5565743592, maintainer 「其他同意」), routed at 5599600566 with the maintainer's 2026-09-09 answers:
"B — split across two releases. spec widens to the nine first (additive, nothing refused), objectui converges on that released pin, and heading/subheading are retired in a later spec release once out-of-repo authors have had a window."
"Add a generic value-level retirement helper beside retiredKey() — ⛔ not a one-off .superRefine on this enum."
The ruling's shape for the two values: "heading and subheading become named refusals carrying the migration hint (heading → h2, subheading → h3, or pick the level you mean)."
objectui converges (objectui#7450, PR feat(components): element:text takes the published nine variant values (objectui#7450) objectui#11304, in landing): element:text renders the nine the way ui:text does. The Studio inspector offers only the nine. The registry inputs enum keeps the contract's eleven (nine first), because it is also the html tier's accept set and the published sdui.manifest.json's. objectui adds no local refusal.
Release 2 (this card): measured on the installed 17.5.0 by the objectui#7450 dev, heading and subheading still parse. The named refusals are not applied yet.
Timing is the ruling's "once out-of-repo authors have had a window". The window is triage's or the maintainer's to set, ⛔ not this seat's.
The objectui follow-up after that release is installable: objectui's registry inputs enum drops the two values. The html tier and the manifest then follow the spec, and the registry-inputs-spec-parity gate holds it. That is a one-line objectui card, filed when this lands.
Filing-gate category: ④ the carrier for a recorded ruling's next step, which no open card holds. Reader: triage first (grade, route and timing). Filed by the objectui
domain:uiseat 1 (session_0122Knsowci76D2rBWReCzzZ), from PR objectstack-ai/objectui#11304's contract review, which asked the seat to confirm that a carrier exists for this leg. ⛔ Not graded here, and ⛔ no timing chosen here.Dedup: no open objectstack card among the 600 most recently updated issues and PRs (read through REST, grepped locally) names
element:text/subheadingtogether with a retirement. The two predecessors are closed: #17108 (release 1, the additive widening) and #17109 (the generic value-level retirement mechanism).The ruling
objectui#7450's ruling B (
5565743592, maintainer 「其他同意」), routed at5599600566with the maintainer's 2026-09-09 answers:heading/subheadingare retired in a later spec release once out-of-repo authors have had a window."retiredKey()— ⛔ not a one-off.superRefineon this enum."headingandsubheadingbecome named refusals carrying the migration hint (heading→h2,subheading→h3, or pick the level you mean)."Where each step stands
element:text.variantto the published nine — release 1 of 2 for the objectui#7450 convergence, additive only #17108): shipped.@objectstack/spec17.5.0'sElementTextPropsSchema.variantaccepts the published nine.retiredKey()retires a key, and a ruled enum-member retirement has nothing to land on #17109): closed. Its fix (7e4ecc5fde) is an ancestor of the 17.5.0 release commit.variantvalues (objectui#7450) objectui#11304, in landing):element:textrenders the nine the wayui:textdoes. The Studio inspector offers only the nine. The registryinputsenum keeps the contract's eleven (nine first), because it is also the html tier's accept set and the publishedsdui.manifest.json's. objectui adds no local refusal.headingandsubheadingstill parse. The named refusals are not applied yet.Direction (for triage, not a ruling)
retiredKey()retires a key, and a ruled enum-member retirement has nothing to land on #17109's value-level mechanism toElementTextPropsSchema.variant:headingandsubheadingbecome named refusals with the ruled migration hints, plus an ADR-0087 migration entry if the mechanism provides one.inputsenum drops the two values. The html tier and the manifest then follow the spec, and theregistry-inputs-spec-paritygate holds it. That is a one-line objectui card, filed when this lands.Dedupe words:
element:text variant heading subheading retire·release 2 of 7450·value-level retirement element:textGenerated by Claude Code