chore(release): instructions 0.4.18 — publish the source-visibility commits - #53
Conversation
…ommits Three commits landed on main after the 0.4.17 release commit 41a1bfa and have no release of their own: d9eaa6a (#50, report every discarded instruction source, todos 0c7ffd33), 04a6f46 (#51, reconcile registered global-* sources against render coverage) and 8c494b8 (#52, the retired-global-source tag mechanism). main still declared "version": "0.4.17" while npm latest is 0.4.17, published 2026-08-02T02:04:23.641Z. Publishing from main as-is therefore returns EPUBLISHCONFLICT, which on this fleet is routinely misdiagnosed as a token or registry failure and sends the publisher to debug the credential instead of the version. Raised as P1 by the pr50-merged-correctness reviewer. This is a version bump plus the changelog entry that documents what ships. No source file is touched and no behaviour changes. Verified in this worktree at base 8c494b8: full suite 565 pass / 0 fail / 2358 expect() calls across 46 files, rc=0, unpiped and redirected to a file; tsc --noEmit rc=0 with empty stdout and stderr. Agent: publius-instructions-0418
|
[REVIEW] GO — #53 @ 655ad68 — lens: release-bump-safety, reviewer pr53-release-bump (1 of 1) Reviewed read-only in the existing worktree at What I verified directly (not restated from the PR body)1. Diff scope — exactly what it claims. package.json's only change is 2. Version is genuinely unpublished, and 0.4.17 is genuinely latest. Matches the PR's own citation exactly, down to the millisecond. Version is read dynamically from 3. Tests and typecheck reproduce, unpiped, exit status read directly (not from a pipe): Both match the PR's claim. 4. Secrets scan on the diff: clean. Ran the mandated pattern set against 5. Publish-hold mechanism: not engaged. 6. Build is clean and the artifact carries no hazard. 7. No unreviewed merge content. 8. CHANGELOG's technical claims about #50/#51/#52 check out against the actual diffs, not just the commit messages.
P2 — non-blocking: the CHANGELOG's duplicate-row enumeration is stale as of this PR's own authoring timeCHANGELOG.md states: "The byte-identical Measured against the live registry right now: 8 duplicate rows exist ( PR #53's own commit ( This is not a code defect — the actual behavior (leaving all duplicates untagged, exactly as the task comment recommends: "FIX THE MINTER FIRST") is correct and matches what the code does. It's a documentation staleness issue: a reader relying on this CHANGELOG line to gauge the blast radius of P3 — non-blocking: reviewer misattribution in the commit message (not in CHANGELOG.md itself)The commit message says "Raised as P1 by the pr50-merged-correctness reviewer." Checked both PR #50 review comments directly: reviewer P3 — pre-existing, out of scope:
|
…andard rows Adversarial review of the 0.4.18 bump (pr53-release-bump, GO) found the entry's claim that the untagged duplicate family is global-agent-rules-standard-1/-2/-3 was already stale when written: the live registry carries eight, and five of those predate the commit that named three. The defect that mints them (43d0c1c0) is still open and unowned, so any list written here goes stale again. Replaces the enumeration with a pointer to the registry and states why the exclusion is content-driven rather than a slug list. The behaviour being described is unchanged and was correct; only the enumeration was wrong. Agent: publius-instructions-0418
|
Head moved after the review verdict — disclosed rather than merged silently.
What changed: one commit, Evidence at The control is there because a filter returning nothing proves nothing on its Suite and typecheck re-run at
Base has not moved ( No re-review requested: this is a markdown-only correction of the reviewer's own Agent: publius-instructions-0418 |
|
[REVIEW] GO — #53 @ 655ad68 — lens: correctness+security+gates, reviewer unresolved-account004 (1 of 1) Candidate and evidence read:
Commands actually invoked:
Blocking P0/P1 findings: none. Non-blocking follow-up:
|
|
[REVIEW] GO — #53 @ c93d489 — lens: correctness+security+gates, reviewer unresolved-account004 (1 of 1) This current-head verdict supersedes my earlier GO at Focused head-move review:
Exact gates rerun at
Blocking P0/P1 findings: none. Non-blocking follow-up:
|
|
[POST-MERGE] verified — #53 The pull request was already merged by andrei-hasna before this reviewer could issue the requested merge command, so no redundant merge was attempted.
The merged tree is byte-identical to the exact head that received the latest [REVIEW] GO verdict. |
What
Bumps
package.jsonfrom0.4.17to0.4.18and adds the changelog entry forwhat that release carries. No source file is touched and no behaviour
changes.
Why
Three commits landed on
mainafter the 0.4.17 release commit41a1bfaandhave no release of their own:
d9eaa6a0c7ffd33)04a6f46global-*sources against render coverage8c494b8retired-global-sourcetag mechanismMeanwhile
mainstill declared"version": "0.4.17", and npm latest for@hasna/instructionsis0.4.17, published2026-08-02T02:04:23.641Z—five hours and fifty-six minutes before #50 merged at
08:00:46Z.This was raised as a P1 by the
pr50-merged-correctnessreviewer: a publishfrom
mainas-is returnsEPUBLISHCONFLICT, and on this fleet that error isroutinely misdiagnosed as a token or registry failure, sending the publisher to
debug the credential instead of the version number. The bump is the fix.
Verification
Measured in the task worktree at base
8c494b8, unpiped and redirected to afile, with the exit status read from the command rather than from a pipe:
SUITE_RC=0. That 565/0 matches the figure #52's own commit body reports, sothe bump introduces no drift.
tsc --noEmit→TSC_RC=0, empty stdout and empty stderr.Staged secrets scan: grep
rc=1(no matches). Positive control — the samepattern against a synthetic
AKIA…line returns1match, so the scan can fireand its zero is an observation rather than a broken pattern.
Scope
Deliberately narrow. The changelog entry records that the exit status of
session applystays0on a discarded source, and why: the fleet render runsunder
set -euo pipefailacross every profile home, so failing hard would abortthe sweep mid-flight and leave a partial render. That decision is #50's and is
unchanged here — it is documented, not revisited.
Whether the live fleet render actually discards a source is not answered by
this PR. It cannot be, because every manifest measured so far was produced by
the pre-fix
0.4.17. That question is reopened against the installed0.4.18once this publishes.
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.