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 two plugin-type-closed-set pins explain themselves by "the spelling a stale describe() still uses" — #15639 removes the last such describe #15640
Filed by the domain:spec execution seat (session session_01G4138K1EG7kQ81FNba5Kp4, seat post #6017) as the cross-lane follow-up to #14609 / PR #15639. Routing and grading are triage's — filed bare.
What is about to become false, and who makes it false
PR #15639 (#14609) corrects three .describe() strings in packages/spec/src/kernel/plugin.zod.ts that named type="ui-plugin", a value PluginSchema refuses. Two pin tests deliberately name that refused spelling, and each explains why it was chosen:
packages/core/src/plugin-type-closed-set.test.ts:69 — the comment says `'ui-plugin'` is "the spelling a stale describe() string still uses".
packages/rest/src/plugin-type-closed-set.pin.test.ts:70 — the parallel @ts-expect-error comment calls it "a stale describe() spelling".
Once #15639 lands, no describe string uses that spelling anywhere in the tree, and both sentences are false in the present tense.
Why this is worth a card rather than a shrug
⛔ The pinned VALUE must not change.ui-plugin is still refused by PluginSchema and both pins are still correct and still valuable. This card is about the surrounding comment only.
The concrete risk is not that a reader is misled about what the test does — it is that the comment states the pin's justification, and that justification reads as expired. A later reader who checks the claim, finds no stale describe anywhere, and concludes the pin is vestigial may delete a test that is doing real work. The pin's actual justification is durable and outlives the describe fix: ui-plugin was once a live spelling, external callers may still send it, and the closed set must keep refusing it. That is what the comments should say.
⛔ packages/core and packages/rest are not the domain:spec seat's surface. They belong to other lanes, and a cross-domain edit is assigned by the triage seat, not self-assigned by an execution seat. A one-line comment fix does not rise to the "genuinely un-splittable cross-domain PR" exception, so the disciplined route is this card.
The dev raised it rather than acting unilaterally, and recommended exactly this when the fence could not be lifted.
Suggested shape (⛔ not a ruling — the owning lane decides)
Re-word both comments to state the durable justification instead of the expired one, keeping the pinned value ui-plugin and every assertion untouched. Comment-only; no test semantics change.
Sequencing
⚠️ Only actionable after PR #15639 lands — until then the sentences are still true. Blocked-by: objectstack-ai/objectstack#14609
Filed by the
domain:specexecution seat (sessionsession_01G4138K1EG7kQ81FNba5Kp4, seat post #6017) as the cross-lane follow-up to #14609 / PR #15639. Routing and grading are triage's — filed bare.What is about to become false, and who makes it false
PR #15639 (#14609) corrects three
.describe()strings inpackages/spec/src/kernel/plugin.zod.tsthat namedtype="ui-plugin", a valuePluginSchemarefuses. Two pin tests deliberately name that refused spelling, and each explains why it was chosen:packages/core/src/plugin-type-closed-set.test.ts:69— the comment says`'ui-plugin'`is "the spelling a stale describe() string still uses".packages/rest/src/plugin-type-closed-set.pin.test.ts:70— the parallel@ts-expect-errorcomment calls it "a stale describe() spelling".Once #15639 lands, no describe string uses that spelling anywhere in the tree, and both sentences are false in the present tense.
Why this is worth a card rather than a shrug
⛔ The pinned VALUE must not change.
ui-pluginis still refused byPluginSchemaand both pins are still correct and still valuable. This card is about the surrounding comment only.The concrete risk is not that a reader is misled about what the test does — it is that the comment states the pin's justification, and that justification reads as expired. A later reader who checks the claim, finds no stale describe anywhere, and concludes the pin is vestigial may delete a test that is doing real work. The pin's actual justification is durable and outlives the describe fix:
ui-pluginwas once a live spelling, external callers may still send it, and the closed set must keep refusing it. That is what the comments should say.Why it was not fixed in PR #15639
Two reasons, and the second is the binding one:
plugin.zod.tsdescribe() strings forstaticPath/slug/defaultstill saytype="ui-plugin"— the enum member isui#14609's defect was text that instructs —"Required for type=\"ui-plugin\""tells an author to write a value the schema then rejects. These comments explain provenance to a maintainer reading a test. Similar family, materially different blast radius.packages/coreandpackages/restare not thedomain:specseat's surface. They belong to other lanes, and a cross-domain edit is assigned by the triage seat, not self-assigned by an execution seat. A one-line comment fix does not rise to the "genuinely un-splittable cross-domain PR" exception, so the disciplined route is this card.The dev raised it rather than acting unilaterally, and recommended exactly this when the fence could not be lifted.
Suggested shape (⛔ not a ruling — the owning lane decides)
Re-word both comments to state the durable justification instead of the expired one, keeping the pinned value
ui-pluginand every assertion untouched. Comment-only; no test semantics change.Sequencing
Blocked-by: objectstack-ai/objectstack#14609Generated by Claude Code