docs: sync to v0.4.0 and record what the release did and did not verify - #105
Merged
Conversation
The v0.3.0 pattern: the docs sync follows the release rather than riding the version bump, because a status block claiming "v0.4.0 on npm" before the tag is pushed is briefly false. v0.4.0 published 2026-08-08 at 22:25Z and the MCP registry entry re-published at 23:16Z, so both claims are now true. Version strings move in the README status block, CLAUDE.md, the site hero, homepage status band, quickstart, the CI guide's pin advice, and the bug-report template's placeholder. The CI guide's "currently the v0.3.0 commit" note names `c3dff3a`, where `v0` actually points now. The status blocks say the rung, not just the number. Markers landed at ADR-0014 rung 1 — unit, contract and purity coverage plus maintainer verification, and no reference-repository run. Every other surface the README and CLAUDE.md describe is at rungs 1-2. Bumping the version without that clause would silently promote the newest and least-verified feature to the evidence level of the oldest. CLAUDE.md gains a section for markers, covering the two properties that are load-bearing and easy to break: that they reach `adr explain` and nothing else, and that the scanner's dedicated-line rule and observed-byte truncation are what stop a marker from naming a record the file never declared. DISTRIBUTION.md records the 0.4.0 registry publication with the fields the response actually returned, and its A5 snippet is replaced with the live `packages/mcp/server.json` verbatim rather than hand-patched. Those two had already drifted: the doc still described `ADRKIT_MCP_CWD` as "Repository root to read (default: process.cwd())" while the shipped manifest says it must contain a readable `.git` entry. Bumping two version strings would have left that wrong for another release. RELEASING.md keeps the v0.3.0 carry-forwards and adds three from this cutover, each of which cost time: `bun.lock` records a `version` per workspace package that no install command refreshes, `CLI_VERSION` and `SERVER_INFO` are hardcoded and move with the manifests, and the publish dry-run now fails on the adapter (#104). The reference-verification index is annotated, not edited. Its rows record runs that happened against `@adrkit/cli@0.3.0`, and rewriting them to 0.4.0 would manufacture evidence for a run nobody performed. The reference workflow pins `ADRKIT_CLI_VERSION: "0.3.0"` deliberately, so the gate is green rather than stale-and-red, but green against a superseded CLI is not evidence about the current release. A dated note says so and scopes the verdict. Verified: 1840 tests pass, lint clean, `adr lint` reports 21 records with 0 errors and 0 warnings, and the documentation site builds (31 pages). Signed-off-by: Mark Beacom <m@beacom.dev>
There was a problem hiding this comment.
Pull request overview
Synchronizes documentation with the v0.4.0 release and accurately scopes its verification evidence.
Changes:
- Updates public version references and Action pins.
- Documents inbound
@adrmarkers and rung-1 status. - Records release lessons and registry/reference-verification state.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
README.md |
Updates release status and marker evidence. |
CLAUDE.md |
Documents marker constraints and scope. |
docs/DISTRIBUTION.md |
Refreshes MCP registry records and manifest. |
docs/RELEASING.md |
Records v0.4.0 release guidance. |
docs/reference-verification-spec-kit-extension.md |
Clarifies evidence currency. |
site/src/components/Hero.astro |
Updates homepage version. |
site/src/content/docs/index.mdx |
Updates status band. |
site/src/content/docs/quickstart.mdx |
Updates published CLI version. |
site/src/content/docs/ci.mdx |
Updates release and Action pins. |
.github/ISSUE_TEMPLATE/bug_report.yml |
Updates version placeholder. |
💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.
…wise DISTRIBUTION.md §A4 claimed the 0.4.0 registry check was "RELEASING.md step 7's exact assertion". Step 7 greps for `0.3.0`, and deliberately so: it sits inside the completed v0.3.0 cutover runbook, retained as a worked template whose versions the next cutover substitutes. Sweeping the version in a sentence that quotes another document made the citation describe text that does not exist. Reworded as a rerun with the version substituted, and the template's intent is stated so the next sweep does not repeat this. The same slip, self-inflicted, in RELEASING.md: a new carry-forward note credited "step 1's 'update any inter-package expectations'" while sitting immediately above the cutover runbook's own step 1, which says to start from the release commit on main. The phrase belongs to "Subsequent releases" step 1, which the note now names. Site rebuilds (31 pages); `adr lint` reports 21 records, 0 errors, 0 warnings. Signed-off-by: Mark Beacom <m@beacom.dev>
This was referenced Aug 10, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The post-release docs sync for v0.4.0, following the #81 pattern: it lands after the release rather than riding the version bump, because a status block claiming "v0.4.0 on npm" before the tag is pushed is briefly false.
Both claims are now true.
v0.4.0published 2026-08-08 at 22:25:39Z;dev.adrkit/mcpre-published to the MCP registry at 23:16:38Z withisLatest: true;v0moved toc3dff3a.Version strings
README status block,
CLAUDE.md, the site hero, the homepage status band, quickstart, the CI guide's pin advice, and the bug-report template placeholder. The CI guide's "currently the v0.3.0 commit" note now namesc3dff3a, which is wherev0actually points.The status blocks say the rung, not just the number
Markers landed at ADR-0014 rung 1 — unit, contract and purity coverage plus maintainer verification, with no reference-repository run. Every other surface the README and
CLAUDE.mddescribe sits at rungs 1–2. Moving the version number without that clause would silently promote the newest and least-verified feature to the evidence level of the oldest, which is the failure mode ADR-0016 exists to catch.CLAUDE.mdalso gains a markers section covering the two properties that are load-bearing and easy to break: that they reachadr explainand nothing else, and that the dedicated-line rule plus observed-byte truncation are what stop a marker from naming a record the file never declared.DISTRIBUTION.md— regenerated, not patchedThe 0.4.0 registry record is written from the fields the response actually returned, and the §A5 snippet is replaced with
packages/mcp/server.jsonverbatim rather than having two version strings edited.That mattered. The two had already drifted: the doc described
ADRKIT_MCP_CWDas "Repository root to read (default: process.cwd())" while the shipped manifest says it must contain a readable.gitentry. A version-string patch would have left that wrong for another release.RELEASING.md— three new carry-forwardsThe v0.3.0 notes stay; these are added because each one cost real time this cutover:
bun.lockrecords aversionper workspace package and nothing refreshes it. Neitherbun installnorbun install --forceupdates those fields after a manifest bump.release-packcatches it (@adrkit/evaluator must resolve @adrkit/core to 0.4.0, got 0.3.0), and regenerating the lockfile fixes it while pulling unrelated drift (jose,undici,@octokit/*,@types/node) into the release commit. Edit the four lines directly.CLI_VERSIONandSERVER_INFOare hardcoded and move with the manifests. Each has a test, sobun testfinds them — step 1's "update any inter-package expectations" is mostly these two.The reference-verification index is annotated, not edited
Its rows record runs that happened against
@adrkit/cli@0.3.0. Rewriting them to 0.4.0 would manufacture evidence for a run nobody performed, so they stay exactly as they are — the same reasoning that leavesspecs/**and the changelog's history alone.What is added is a dated note, because I checked the gate rather than assuming: the reference workflow pins
ADRKIT_CLI_VERSION: "0.3.0"deliberately, so it is green rather than stale-and-red andPIN-3still matches. But green against a superseded CLI is not evidence about the current release, so the note scopes the rung-2 verdict to@adrkit/cli@0.3.0and flags the pin bump as separate work.Verification
bun testbun run lintadr lintNot in this PR
ADRKIT_CLI_VERSIONin the reference repository and recording a fresh rung-2 run against 0.4.0.