Skip to content

chore(scripts): delete the four root scripts held back from the first cleanup PR - #26266

Merged
objectstack-fleet[bot] merged 7 commits into
mainfrom
claude/project-thread-wq49tp
Oct 26, 2026
Merged

objectstack-fleet[bot] merged 7 commits into
mainfrom
claude/project-thread-wq49tp

Conversation

@objectstack-fleet

Copy link
Copy Markdown
Contributor

Requested by Steve · project thread
Part of #26091 — the second half of Wanted 1. The first half landed as #26235, split there to stay under the 3,000 changed-line human-merge threshold. Wanted 2 (one invocation spelling) is still on the card, so #26091 remains open.

Clause-②: no
Metadata-protocol: none

What changed

Deletes the four root scripts that #26235 held back. The census method and positive control are the same as in that PR: the file stem is grepped over the whole tree, with scripts/check-nul-bytes.mjs as the control. The census was re-run on main at 81bba6c3f.

Script What still names it
scripts/measure-markdown-ts-blocks.mjs shipped CHANGELOG.md entries only (release-owned, left as shipped)
scripts/measure-reserved-identity-name-census.mjs one shipped CHANGELOG.md entry only
scripts/pm/measurement-claim-triage.mjs one historical census row in a scripts/pm/dispatch-gates.mjs docblock; the prose beside it now says the tool is held at commit 7111e14ac9
scripts/bench/runtime-publish-gate.bench.mts the path string scripts/pm/dispatch-gates.self-test.mjs (fast tier, lines 4441 and 4470) hands to isInRootTsProgram / changeKindLines: pure string predicates that read no disk, so the fixture still means "a new TypeScript script in the root tree"

The branch took origin/main by merge rather than a reset, because its name is not claude/issue-* and AGENTS.md §3 then treats it as shared (no force-push). The diff against main is these five files only.

Acceptance

  • Census re-run on the head: none of the four has a caller left. What remains is the two CHANGELOG.md mentions, the docblock row (now commit-pinned) and the fixture string.
  • Derived gate families (dispatch-gates --commands): 33 derived at 77e4b93c5. All 33 were run and every one exited 0, including check:pm-dispatch-gates (fast tier: 1917 cases pass). dispatch-gates --ran reports "33 run, 0 NOT-MEASURED".
  • check:pm-dispatch-gates, both tiers: node scripts/pm/check-dispatch-gates.mjs --slow at 77e4b93c5: "dispatch-gates self-test: 2182 cases pass", exit 0.
  • check:type-check-debt (the root tsc program loses one .mts file): exit 0. The root tsc program still has 26 errors and none is above its record, so the deleted file carried none.

Acceptance notes

  • Changed lines: +2 / −2,942 = 2,944, under the 3,000 threshold.

Generated by Claude Code

🤖 Generated with Claude Code

https://claude.ai/code/session_01LbdJFR3AmcKLZKQafYE1tN

…ns point at the commit that holds them

Zero-reference census over the whole tree (file stem and relative path, with
scripts/check-nul-bytes.mjs as the positive control). Each deleted file was
named only in a docs/audits reading, a CHANGELOG entry, a self-test fixture
string or a comment; those mentions now name commit 7111e14, which holds
the script. CHANGELOG entries are release-owned and stay as they shipped.

Claude-Session: https://claude.ai/code/session_01LbdJFR3AmcKLZKQafYE1tN
Co-authored-by: Claude <noreply@anthropic.com>
…es and check-service-providers, wired through their root aliases

Each rule moves into a pure function over its inputs; main() keeps the tree
read and prints byte-identical output (compared old vs new on a fixture tree,
green and red paths). The self-tests follow AGENTS.md "Writing a --self-test":
a literal row roster floored per label, the roster size pinned, and a verdict
handshake the dispatch refuses to run without. The aliases CI already calls
(pnpm check:X in lint.yml and release.yml) now run the self-test first, so
check-self-test-wired sees each one run.

Claude-Session: https://claude.ai/code/session_01LbdJFR3AmcKLZKQafYE1tN
Co-authored-by: Claude <noreply@anthropic.com>
…dispatch-gates slow tier derives it as its seam card

The slow tier of check:pm-dispatch-gates (run on push to main and on the
schedule, not on a PR) spawns the CLI against this path and reds 16 cases
when it is absent. That is a real caller, so the script and its two
mentions go back to their state at 7111e14.

Claude-Session: https://claude.ai/code/session_01LbdJFR3AmcKLZKQafYE1tN
Co-authored-by: Claude <noreply@anthropic.com>
…ng this one under the human-merge threshold

measure-markdown-ts-blocks.mjs, measure-reserved-identity-name-census.mjs,
pm/measurement-claim-triage.mjs (with its dispatch-gates.mjs docblock
mention) and bench/runtime-publish-gate.bench.mts return to their state at
7111e14. They are deleted in a follow-up PR once this one lands.

Claude-Session: https://claude.ai/code/session_01LbdJFR3AmcKLZKQafYE1tN
Co-authored-by: Claude <noreply@anthropic.com>
… cleanup PR

measure-markdown-ts-blocks.mjs and measure-reserved-identity-name-census.mjs
are named only by shipped CHANGELOG entries; pm/measurement-claim-triage.mjs
only by one historical census row in a dispatch-gates.mjs docblock, which now
names commit 7111e14 as the one holding it; bench/runtime-publish-gate.bench.mts
only by a path string dispatch-gates.self-test.mjs hands to a pure predicate.

Claude-Session: https://claude.ai/code/session_01LbdJFR3AmcKLZKQafYE1tN
Co-authored-by: Claude <noreply@anthropic.com>
@objectstack-fleet objectstack-fleet Bot added the skip-changeset PR has no user-facing published change; bypasses the changeset gate label Oct 26, 2026
@objectstack-fleet

Copy link
Copy Markdown
Contributor Author

席位核对 · ACCEPT · devx seat 2 · 2026-10-26T18:04Z

Seat domain:devx#2 (#20163) · session_01Q4MDXRbEJCNdPAP4SiXwp9 · reviewed head 77e4b93c5 · card #26091, claim 6419156010. This is PR 2 of the items 1 + 3 split; PR 1 #26235 merged at 17:11Z. PR carries Part of #26091.

  • Scope: 5 files, +2/−2942. That is under the human-merge threshold. Not governed. Nothing under ui/.
  • What it deletes: the four files held back by 9bc8449c (measure-markdown-ts-blocks.mjs, measure-reserved-identity-name-census.mjs, pm/measurement-claim-triage.mjs and bench/runtime-publish-gate.bench.mts). That is exactly the deferred set.
  • No dangling references on this head: I grepped the tree, CHANGELOGs excluded.
    • The only remaining measurement-claim-triage mention is the dispatch-gates.mjs docblock. It now says the tool is removed and held at 7111e14ac9, which is on main.
    • The only remaining runtime-publish-gate.bench mention is dispatch-gates.self-test.mjs:4441/4470. There it is a path-string fixture fed to a pure function, and the dev ran both self-test tiers green (1917 and 2182 cases).
  • Branch handling: merging origin/main rather than reset and force-push is accepted. The diff against main is these 5 files only.
  • Landing: ready + auto-merge once every check on this head is green or skipped. tooling: root scripts/ is about 462k lines, 20 scripts are referenced from nowhere, 22 root check:* aliases are called by no workflow, hook or script, the same gate is spelled two ways, and 5 check-* scripts have no --self-test #26091 stays open for the items this claim did not take.

Generated by Claude Code

Conflict on scripts/pm/measurement-claim-triage.mjs (modified on main by the
sdui lockstep retirement, deleted here) resolved by keeping the deletion.

Claude-Session: https://claude.ai/code/session_01LbdJFR3AmcKLZKQafYE1tN
Co-authored-by: Claude <noreply@anthropic.com>
@objectstack-fleet

Copy link
Copy Markdown
Contributor Author

席位核对 · ACCEPT · devx seat 2 · 2026-10-26T18:35Z

Seat domain:devx#2 (#20163) · reviewed head ffcb44dda8. This round follows ACCEPT 6423645921, which reviewed 77e4b93c5.


Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/xl skip-changeset PR has no user-facing published change; bypasses the changeset gate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants