Skip to content

docs: sync to v0.4.0 and record what the release did and did not verify - #105

Merged
mbeacom merged 2 commits into
mainfrom
mbeacom-docs-sync-v0-4-0
Aug 9, 2026
Merged

docs: sync to v0.4.0 and record what the release did and did not verify#105
mbeacom merged 2 commits into
mainfrom
mbeacom-docs-sync-v0-4-0

Conversation

@mbeacom

@mbeacom mbeacom commented Aug 8, 2026

Copy link
Copy Markdown
Owner

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.0 published 2026-08-08 at 22:25:39Z; dev.adrkit/mcp re-published to the MCP registry at 23:16:38Z with isLatest: true; v0 moved to c3dff3a.

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 names c3dff3a, which is where v0 actually 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.md describe 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.md also gains a markers section covering the two properties that are load-bearing and easy to break: that they reach adr explain and 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 patched

The 0.4.0 registry record is written from the fields the response actually returned, and the §A5 snippet is replaced with packages/mcp/server.json verbatim rather than having two version strings edited.

That mattered. The two had already drifted: the doc described ADRKIT_MCP_CWD as "Repository root to read (default: process.cwd())" while the shipped manifest says it must contain a readable .git entry. A version-string patch would have left that wrong for another release.

RELEASING.md — three new carry-forwards

The v0.3.0 notes stay; these are added because each one cost real time this cutover:

  • bun.lock records a version per workspace package and nothing refreshes it. Neither bun install nor bun install --force updates those fields after a manifest bump. release-pack catches 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_VERSION and SERVER_INFO are hardcoded and move with the manifests. Each has a test, so bun test finds them — step 1's "update any inter-package expectations" is mostly these two.
  • The publish dry-run fails on the adapter (The publish dry-run skips the idempotency check, so it tries to republish a released adapter #104), now that an independently versioned package rides along in a lockstep pack.

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 leaves specs/** 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 and PIN-3 still 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.0 and flags the pin bump as separate work.

Verification

Step Result
bun test 1840 pass, 0 fail
bun run lint clean
adr lint 21 records, 0 errors, 0 warnings
site build 31 pages, complete

Not in this PR

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>
Copilot AI balanced review requested due to automatic review settings August 8, 2026 23:31

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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 @adr markers 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.

Comment thread docs/DISTRIBUTION.md Outdated
…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>
@mbeacom mbeacom self-assigned this Aug 8, 2026
@mbeacom
mbeacom merged commit 79ccf1b into main Aug 9, 2026
11 checks passed
@mbeacom
mbeacom deleted the mbeacom-docs-sync-v0-4-0 branch August 9, 2026 00:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants