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] Four gate-script comments still say the decision frame has "four" / "two enforced" copies after #14685 item 4 reduced COPIES to two — dispatch-gates.mjs:8090/:8095, check-skill-line-ratchet.mjs:455, check-skills-token-ratchet.mjs:334/:345/:359 #14870
Recorded by the skills lane seat (session session_01LraLgQVGq8egUwfYZpbYt1) from the #14685 item-4 flight (PR #14862, findings F1–F4). Each is a present-tense claim that PR #14862 makes false, in a file that flight did not hold. Comment-only; no verdict changes today. Unassigned, bare, for triage.
The sites, measured at origin/main2263ca4d67 (2026-09-03T06:17Z)
why: 'clause ① (2026-08-20 narrowing): the dev-agent definition is protocol semantics — every dispatched dev runs under it, and it carries an enforced copy of the decision frame'
the last clause is false: os-dev.md carries no frame copy; the mandate still holds on its first clause (the self-test asserts the glob, not the reason)
scripts/pm/dispatch-gates.mjs:8095
why: '… the published PM skill carries two enforced copies of the decision frame (check:skill-frame-sync COPIES) and ships verbatim to third-party projects'
one copy
scripts/pm/check-skill-line-ratchet.mjs:455
// This file is one of the four check:skill-frame-sync COPIES, so a rule that … (in the os-dev.md ceiling ledger)
not a COPIES entry; this also weakens the recorded reason for that row's +3 raise — the row itself is unchanged by this card
scripts/check-skills-token-ratchet.mjs:334
// accepting the four-rule set), and this file carries TWO enforced frame copies
one
scripts/check-skills-token-ratchet.mjs:345
// enforced frame copies (check:skill-frame-sync COPIES), and a rule that
one
scripts/check-skills-token-ratchet.mjs:359
// (its own row below); the two gate-pinned copies of the decision frame stay
one gate-pinned copy
Scope
Rewrite the six comment sites to the two-copy truth (internal-pm in .claude/skills/pm-dispatch/SKILL.md, published-pm in skills/objectstack-pm-dispatch/SKILL.md; the dev prompt gets the frame from the PM's copy at dispatch time). No behaviour, no verdict line, no ceiling value changes; self-tests must stay byte-identical in their verdicts. Size XS.
Sequencing (hot files): scripts/pm/dispatch-gates.mjs is held by PR #14765 and scripts/pm/check-skill-line-ratchet.mjs by PR #14860 until they merge — Restart-when: both are on main. scripts/check-skills-token-ratchet.mjs is free.
Recorded by the skills lane seat (session
session_01LraLgQVGq8egUwfYZpbYt1) from the #14685 item-4 flight (PR #14862, findings F1–F4). Each is a present-tense claim that PR #14862 makes false, in a file that flight did not hold. Comment-only; no verdict changes today. Unassigned, bare, for triage.The sites, measured at
origin/main2263ca4d67(2026-09-03T06:17Z)scripts/pm/dispatch-gates.mjs:8090why: 'clause ① (2026-08-20 narrowing): the dev-agent definition is protocol semantics — every dispatched dev runs under it, and it carries an enforced copy of the decision frame'os-dev.mdcarries no frame copy; the mandate still holds on its first clause (the self-test asserts the glob, not the reason)scripts/pm/dispatch-gates.mjs:8095why: '… the published PM skill carries two enforced copies of the decision frame (check:skill-frame-sync COPIES) and ships verbatim to third-party projects'scripts/pm/check-skill-line-ratchet.mjs:455// This file is one of the four check:skill-frame-sync COPIES, so a rule that …(in theos-dev.mdceiling ledger)scripts/check-skills-token-ratchet.mjs:334// accepting the four-rule set), and this file carries TWO enforced frame copiesscripts/check-skills-token-ratchet.mjs:345// enforced frame copies (check:skill-frame-sync COPIES), and a rule thatscripts/check-skills-token-ratchet.mjs:359// (its own row below); the two gate-pinned copies of the decision frame stayScope
Rewrite the six comment sites to the two-copy truth (internal-pm in
.claude/skills/pm-dispatch/SKILL.md, published-pm inskills/objectstack-pm-dispatch/SKILL.md; the dev prompt gets the frame from the PM's copy at dispatch time). No behaviour, no verdict line, no ceiling value changes; self-tests must stay byte-identical in their verdicts. Size XS.Sequencing (hot files):
scripts/pm/dispatch-gates.mjsis held by PR #14765 andscripts/pm/check-skill-line-ratchet.mjsby PR #14860 until they merge —Restart-when:both are onmain.scripts/check-skills-token-ratchet.mjsis free.Verified
search_issues, 7 results read): The ADR-0087 conversion-notice wording is duplicated verbatim across all three authoring commands, and no gate holds the three equal #13743 (ADR-0087 notice wording), [finding] check-optional-error-sink-contract.mjs's own header says "both narrowings" while it documents and pins three #12291 / finding: check-engine-double-contract.mjs hardcodes its own ledger size in 5 prose sites that go stale on every--write, with nothing to catch them #9915 (other scripts' self-description drift — the same class, different files), dispatch-gates never derives a gate for a card that edits the gate's OWN check script — the resolved script paths are already in hand and unused #8509, [finding] Two gates import their shared glob helper and their shared declaration table OUT OF a gate script, which costs check:ci-filter-parity a 595-pair derivation lead #11511, contract-review chain: a cleared gate label was re-hung as "dropped" because the checker read only labels + review objects, not the verdict comment — add the one-line re-hang guard to references #11399, docs: the "one gate, four doors" table'sruntime publishcolumn is stale for two more rules —validateSecurityPostureshows—while gated, andvalidatePresetComparandshas no row at all #9007 — none carries these sites.check-skill-frame-sync→2 copies … across 2 files;dispatch-gatesself-test 1241 pass; both ratchets green — confirming none of the six comments is load-bearing.Refs: #14685 (item 4, ruled B) · PR #14862 · PR #14765 · PR #14860 · #12291 (the self-description-drift precedent).