docs(cli): drop the dead tracker number from bin/run.js docblock and keep the sentence - #20983
Conversation
…d keep the sentence The docblock above the process.stderr error listener ended a sentence with " — #14874", a tracker number that no longer resolves. No commit decided that number, so it cannot be re-anchored to one; the sentence already states the measured fact in words ("files names only dist, but npm packs a bin target regardless"), so only the dash and the number go. This is ruling C+D's form D for a line that ships in the tarball. Comment only: the non-comment token stream of bin/run.js is identical before and after (179 tokens), and the file keeps its 258 lines. A patch changeset is owed because npm packs a bin target regardless of files. Claude-Session: https://claude.ai/code/session_01VvcEokUG1tvVxkceYfR5XB Co-authored-by: Claude <noreply@anthropic.com>
📓 Docs Drift Check
What this run could not see
Coarse fallback — 25 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): |
Contract reviewServed-tier: ① Derived judgments(a) The diff is exactly the claimed one — holds. Net diff (b) The changeset — owed, ② Semver level
③ Boundary flagsCheck-runs on PR form: draft, head repo = base repo, base Deviations (7), each answered:
Out-of-scope finding (1), answered: One observation of this record's own, non-blocking: Implemented-by: VERDICT: PASS Generated by Claude Code |
Part of #20594
Clause-②: no
What changed
Stage 18 of the
domain:clilane's dead-citation sweep: the last comment site that ships in the tarball and has no deciding commit.packages/cli/bin/run.js, the docblock line at:225:— #14874is removed (the space, the dash, the number). The sentence stays and still ends in a period: "filesnames onlydist, but npm packs abintarget regardless)." That sentence already states the measured fact in words, so nothing is lost..changeset/20594-cli-bin-form-d.md:@objectstack/clipatch.bin/run.jsis packed as a bin target regardless offiles, so a published byte moves even though behaviour does not.This is ruling C+D's form D for a shipped line: runtime-facing text carries no tracker number and the lesson is written into the words. Form C (anchor a commit) is not available because no commit decided that number: the history search of stage 17, re-read adversarially in contract review
5920476831, found only commits that restate or apply the packing fact. Routing is the stage 17 ACCEPT5920504334; the claim is5920968376.Not in this PR
The five test sites with no deciding commit keep their numbers, as listed under
5914299201:vitest.config.ts:221,test/init.test.ts:189, and the three#14874mentions intest/published-entry-stderr-error-listener.test.tsandtest/published-subpath-hook-body.pin.test.ts. The 97 dead string sites across the lane belong to #20752.Evidence (head
fdb924cc7d, base013f97df93)Comment only, measured two ways.
bin/run.jsis 258 lines before and 258 after; occurrences of14874in the file go 1 to 0; the removed suffix is exactly the dash-and-number and putting it back reproduces the base line.bin/run.js, taken with the TypeScript parser with JSDoc nodes dropped, is identical before and after (179 tokens, equal sha256).git hash-objectequal to the base blob).Smoke (after building the dependency closure):
node packages/cli/bin/run.js --helpexits 0 with 66 stdout lines and empty stderr;--versionexits 0 and prints@objectstack/cli/17.5.0 linux-x64 node-v22.22.2.Gates.
node scripts/pm/dispatch-gates.mjs --repo objectstack-ai/objectstack --commandswith no path derived 54 commands. All 54 were run one by one with the exit code captured before any pipe, and--ranreconciled them: 54 derived, 54 run, 0 NOT-MEASURED, 0 UNRUN. The derivation line named commitfdb924cc7d, which is the final head. An earlier pass ran before the workspace was fully built and read exit 3 (prerequisite not met, so not a verdict) forcheck:dual-build-cjs-loadsandcheck:i18n-coverage; after a fullturbo run build(72 of 72 tasks) the whole list was re-run from scratch and is what is reported here.Lint. The full
pnpm lint(eslint . --no-inline-config) exits 0 with no findings, run on this head, so no narrowed form is relied on.cli package.
pnpm --filter @objectstack/cli typecheck: exit 0.vitest run --project unit): 239 files, 3391 tests passed.bin/, a spawn entry: 67 files in six--shard=i/6runs, all exit 0 (12, 11, 11, 11, 11, 11 files; 71, 118, 74, 94, 114, 107 tests passed, 1 skipped). The whole tier in one call exceeded my 540 s bound and exited 124, which is no reading; it was re-run as the six shards.bin/run.jsthroughmaskComments, so they cannot see a comment edit by construction, and both are inside the integration shards above.Acceptance notes
scripts/check-issue-citations.mjsdeclares its surface as comment prose inpackages/**/src/**;bin/run.jsis outside it, so its green is not a reading of this line. The reading of this line is the byte and token evidence above.packages/cli/bin/run.jsand a.changesetfile); 15 changed lines against the 5000-line human-merge threshold.Generated by Claude Code