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] the retirement route for a .strict() schema: spec-property-retirement §2 and AGENTS.md prescribe delete + guidance map, while retired-key.ts and this week's retirements use retiredKey() #20465
Filing gate: ② two governed rule texts that contradict the code's own documented posture and the landed precedent, with named landing sites. Reader: triage first; the landing sites are governed (Tier S and Tier H), so the maintainer decides. Filed by the domain:spec seat 1 (session_01B3TqpoQbTAfG7G74GMDWNW, seat post #6017) from the at-tier record 5873023860 §③ deviation 3 on PR #20458 (#20300). That record escalated it so that the next retirement does not re-argue the route. Filed bare; no labels chosen.
The contradiction, read at mainfbeb56e4b
The rule texts route a closed shape to deletion:
.claude/skills/spec-property-retirement/SKILL.md §2, the route table, line 87: .strict() → 删键 + guidance map (*_RETIRED_KEY_GUIDANCE, consumed by strictObject()'s guidance: slot).
AGENTS.md Post-Task Checklist step 3, lines 1080–1082: retiredKey() on a non-strict schema, or an entry in the UNKNOWN_KEY_GUIDANCE / *_RETIRED_KEY_GUIDANCE map when the schema is .strict().
The code's own posture, packages/spec/src/shared/retired-key.ts header (lines 15–28): the 未知键静默剥离仍是全仓默认:把 #3405 的 strict 收紧从一个 schema 推广到整个可授权面(ADR-0078 完整性闸门) #4001 campaign closed many shapes with strictObject. On a closed shape a bare deletion is loud, but it cannot carry the prescription or the tsc channel, and a retiredKey() tombstone gives both.
The landed precedent this week, retiredKey() on strictObjects:
As a result, a dev who follows the skill takes the guidance-map route, and a dev who follows the code takes the tombstone. Each retirement re-argues the choice in its report and its review.
Reconcile both to one route. If the guidance-map route is still right somewhere (a shape where a tombstone cannot sit, for example a z.preprocess stage ahead of the closed shape, which retired-key.ts:177 discusses), state that case by name. What the rule should say is the maintainer's call; this card only records that the texts disagree with each other and with the code.
Filing gate: ② two governed rule texts that contradict the code's own documented posture and the landed precedent, with named landing sites. Reader: triage first; the landing sites are governed (Tier S and Tier H), so the maintainer decides. Filed by the
domain:specseat 1 (session_01B3TqpoQbTAfG7G74GMDWNW, seat post #6017) from the at-tier record5873023860§③ deviation 3 on PR #20458 (#20300). That record escalated it so that the next retirement does not re-argue the route. Filed bare; no labels chosen.The contradiction, read at
mainfbeb56e4b.claude/skills/spec-property-retirement/SKILL.md§2, the route table, line 87:.strict()→ 删键 + guidance map (*_RETIRED_KEY_GUIDANCE, consumed bystrictObject()'sguidance:slot).AGENTS.mdPost-Task Checklist step 3, lines 1080–1082:retiredKey()on a non-strict schema, or an entry in theUNKNOWN_KEY_GUIDANCE/*_RETIRED_KEY_GUIDANCEmap when the schema is.strict().packages/spec/src/shared/retired-key.tsheader (lines 15–28): the 未知键静默剥离仍是全仓默认:把 #3405 的 strict 收紧从一个 schema 推广到整个可授权面(ADR-0078 完整性闸门) #4001 campaign closed many shapes withstrictObject. On a closed shape a bare deletion is loud, but it cannot carry the prescription or thetscchannel, and aretiredKey()tombstone gives both.retiredKey()onstrictObjects:action.aria(dcd3bceaa, PR feat(spec)!: retire action.aria — no action renderer ever applied it (ADR-0049) #20398);tabs(6e3e5462c, PR feat(spec)!: retire the list view's owntabskey; named presets arelistViewsentries #20357);name(PR feat(spec)!: retire the inner name on cube measures and dimensions — the record key is the member's name (#20300) #20458, at-tier PASS5873023860, which accepted the route as matching triage and the card).As a result, a dev who follows the skill takes the guidance-map route, and a dev who follows the code takes the tombstone. Each retirement re-argues the choice in its report and its review.
Landing sites
.claude/skills/spec-property-retirement/SKILL.md§2 (Tier S).AGENTS.mdPost-Task Checklist step 3 (Tier H).Reconcile both to one route. If the guidance-map route is still right somewhere (a shape where a tombstone cannot sit, for example a
z.preprocessstage ahead of the closed shape, whichretired-key.ts:177discusses), state that case by name. What the rule should say is the maintainer's call; this card only records that the texts disagree with each other and with the code.Dedupe words: retiredKey, guidance map, strictObject, retirement route, spec-property-retirement, Post-Task Checklist.
Generated by Claude Code