From 4fc57864076f4d20e1ed5bad85aab2c9f19957e2 Mon Sep 17 00:00:00 2001 From: Mark Beacom Date: Mon, 28 Sep 2026 09:03:50 -0400 Subject: [PATCH] docs(adr): record v0.15.0 post-release verification - ADR-0043 action item 5: after the v0.15.0 site deploy, v0.1.0 serves SHA-256 1e184115... and v0.2.0 serves 1db3cafb..., equal to main's schema/adr.schema.json, each at its own $id. - ADR-0018: appended a post-release section. The published @adrkit/mcp@0.15.0 (server SDK 2.1.0), driven headless by Inspector 2.8.0 on both eras, returned identical tool payloads for all four tools; the only difference is the 2026-07-28 serverInfo _meta envelope, naming 0.15.0. Counts match the pre-release run. Signed-off-by: Mark Beacom --- ...e-protocol-revision-2026-07-28-dual-era.md | 24 +++++++++++++++++++ ...ds-retain-v0-1-0-and-validate-every-rec.md | 8 +++++-- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/docs/adr/0018-adopt-mcp-sdk-v2-and-serve-protocol-revision-2026-07-28-dual-era.md b/docs/adr/0018-adopt-mcp-sdk-v2-and-serve-protocol-revision-2026-07-28-dual-era.md index 9fd8175a..00698632 100644 --- a/docs/adr/0018-adopt-mcp-sdk-v2-and-serve-protocol-revision-2026-07-28-dual-era.md +++ b/docs/adr/0018-adopt-mcp-sdk-v2-and-serve-protocol-revision-2026-07-28-dual-era.md @@ -490,3 +490,27 @@ as written; this amends it in two places. A protocol-following 2025-era client that fails or sees a changed response still falsifies this record, exactly as before. + +## Post-release verification (2026-09-28, against published `@adrkit/mcp@0.15.0`) + +The 2.1.0 verification above ran against a local build. This repeats it against +the artifact users install: `@adrkit/mcp@0.15.0` from npm, which resolves +`@modelcontextprotocol/server@2.1.0`, installed into a scratch directory and +launched as `node node_modules/@adrkit/mcp/dist/bin.js` with this repository as +its working directory. The official MCP Inspector 2.8.0 drove it headless in CLI +mode with `--protocol-era legacy` and `--protocol-era modern`. + +| Call | Result, both eras | +|---|---| +| `tools/list` | the four tools; identical once keys are sorted | +| `search_decisions` (`query: bun`) | 17 items | +| `get_decision` (`ref: 0018`) | `found`, `accepted` | +| `get_decision_context` (`files: [packages/mcp/src/server.ts]`) | governing `0018` | +| `list_superseded` | 2 entries | + +Every tool payload (`structuredContent` and `content`) was byte-identical +across the two eras. The one difference is the envelope the `2026-07-28` era +adds to each result, `_meta["io.modelcontextprotocol/serverInfo"]`, which named +`@adrkit/mcp` `0.15.0`. The counts match the pre-release run above. + +Not exercised: the Inspector's web UI. diff --git a/docs/adr/0043-publish-schema-v0-2-0-with-rfc-3339-seconds-retain-v0-1-0-and-validate-every-rec.md b/docs/adr/0043-publish-schema-v0-2-0-with-rfc-3339-seconds-retain-v0-1-0-and-validate-every-rec.md index 5fa4d748..a4a79a13 100644 --- a/docs/adr/0043-publish-schema-v0-2-0-with-rfc-3339-seconds-retain-v0-1-0-and-validate-every-rec.md +++ b/docs/adr/0043-publish-schema-v0-2-0-with-rfc-3339-seconds-retain-v0-1-0-and-validate-every-rec.md @@ -172,8 +172,12 @@ pressure. 3. [x] Bump `SCHEMA_VERSION` to `0.2.0`, lift the `zod` cap and Dependabot `ignore`, re-emit the schema, and re-pin `protected-surfaces.json`. 4. [x] Record the breaking change and the `:00` migration in the CHANGELOG. -5. [ ] Confirm, after the next site deploy, that +5. [x] Confirm, after the next site deploy, that `https://adrkit.dev/schema/adr/v0.1.0/adr.schema.json` serves SHA-256 `1e1841151174cc5a8ed22dadae070f087477e5068bd928d5292c3acd2e2681cc` and `https://adrkit.dev/schema/adr/v0.2.0/adr.schema.json` serves the canonical - file. + file. Observed 2026-09-28 after the v0.15.0 site deploy (`site.yml` push + run on `3440c60`, success): v0.1.0 returned HTTP 200 with SHA-256 + `1e1841151174cc5a…` and `$id` `…/v0.1.0/adr.schema.json`; v0.2.0 returned + HTTP 200 with SHA-256 `1db3cafbfe082b24…`, equal to `schema/adr.schema.json` + on `main`, and `$id` `…/v0.2.0/adr.schema.json`.