agent-cli-runtime 0.1.0-alpha.1 → 0.1.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,517 +1,120 @@
1
- # Release Report: 0.1.0-alpha.1 corrective alpha candidate
1
+ # Release Report: 0.1.0-alpha.2 Publish Dry-Run
2
2
 
3
- Status: Post-publish documentation repair candidate with non-package release evidence
4
- Last updated: 2026-06-23
3
+ Status: `0.1.0-alpha.1` published; `0.1.0-alpha.2` publish-ready release candidate / dry-run stop point
4
+ Last updated: 2026-06-25
5
5
 
6
- This report records release-candidate, alpha publish-readiness, daemon-ready contract hardening, P3-6 real CLI opt-in smoke evidence, P3-7 API / CLI schema freeze evidence, the P3-11 non-package evidence boundary, and the corrective alpha path for `agent-cli-runtime@0.1.0-alpha.1`. Immutable npm version `0.1.0-alpha.0` was published and has GitHub pre-release `v0.1.0-alpha.0`, but its package docs contain stale pre-publish status text; `0.1.0-alpha.1` is the repair release candidate.
6
+ This report is the packaged, stable release-state summary. Volatile release evidence such as current workflow run ids, artifact ids, artifact digests, tarball hashes, pack hashes, local temporary paths, command transcripts, raw logs, raw CLI output, prompt text, and token-looking values belongs outside the npm package under `.release-evidence/` or durable GitHub Release assets.
7
7
 
8
- ## Verdict
9
-
10
- P3-7 freezes the public root boundary, daemon-facing CLI JSON schema inventory, version bump policy, and failure taxonomy in [docs/api-schema-contract.md](./api-schema-contract.md), with drift tests tying the docs to source-level schema/failure vocabularies.
11
-
12
- P3-11 moves current-head release-candidate run evidence out of packaged docs: volatile run ids, artifact ids, artifact digests, tarball shasums, and pack shasums belong under `.release-evidence/` or durable GitHub Release assets. Packaged docs keep stable rules only: trigger a fresh release-candidate workflow for the commit being considered, download all five artifacts, run `npm run release:verify -- --dir <normalized-artifact-dir>`, verify the workflow head SHA equals that commit, and run `npm publish --dry-run --ignore-scripts --tag alpha` before any separately authorized real publish.
13
-
14
- It preserves the product boundary: no trusted publishing setup, no committed npm token, no daemon/API server, no database/WAL, no remote worker, no UI/telemetry layer, and no authenticated real agent run in default gates. Historical P3-9 run `27943672095` only proves target SHA `65fac505ca3eb830a06d8656068cf4ed5f6dd46a`; Historical P3-9 interim run `27942743285` only proves target SHA `a0299a7d81bb614661922bebc8c75496cf0a3d11` before the strict `fixtures?` package-boundary lock; historical P3-8 run `27940814340` only proves target SHA `eb8de0f9b1edfa3f94c35a50b31005c5d3c105d4`; historical P3-5 run `27932628093` only proves workflow head SHA `8d7bc2a19c626caa1ad5223acbcd35df34aff18e`; historical P2-12 run `27869580048` only proves commit `2f8832119b4ebdb8393077052560589a398ebf56`. The package remains a pre-alpha developer preview, does not claim a stable API, and does not claim OpenDesign daemon parity.
15
-
16
- ## P3-11 Current-Head Evidence Boundary
17
-
18
- P3-11 solves the P3-10 self-reference problem by separating stable package docs from volatile current-run evidence:
19
-
20
- - Package docs may describe the release-candidate workflow, required artifacts, verification command, dry-run boundary, human publish gate, and historical evidence as historical only.
21
- - Package docs must not record the current run id, artifact ids, artifact digests, tarball shasum, npm pack shasum, or private downloaded-artifact paths for the commit being considered.
22
- - Volatile current-head evidence is recorded under `.release-evidence/`, which is outside `package.json` `files` and is explicitly rejected by package-boundary checks if it appears in npm pack metadata.
23
- - A release-candidate workflow proves only the commit in its `headSha`. Historical runs must not be reused as proof for later commits.
24
- - A dry-run is not a real publish. A true npm publish remains human-gated and requires a later explicit authorization.
25
-
26
- ## P3-10 Pre-Documentation Alpha Release Candidate Evidence
27
-
28
- P3-10 refreshes release-candidate evidence for pre-documentation HEAD SHA `fdba3ebccb2e57a0ad295101028a2a3937a92204` after the P3-9 evidence-recording repair commit. It does not add runtime APIs, publish npm, configure npm tokens/trusted publishing, execute authenticated real agent runs, or add daemon/API server/database/WAL/remote-worker/UI/telemetry layers.
29
-
30
- This report is the repository-resident evidence packet. The remote workflow evidence is intentionally commit-specific and proves only the pre-documentation SHA above and the tarball produced from that SHA. Run `27945938663` must not be used as final post-documentation publish evidence.
31
-
32
- This repository includes `docs/release-report.md`, `docs/release-checklist.md`, `docs/release-publish-runbook.md`, and other release docs in `package.json` `files`. This means committing this packet changes the package shasum. Any commit that records the P3-10 evidence packet changes packaged content and therefore changes `npm pack` shasum. The final package selected for a real publish must be proven by a fresh release-candidate workflow after committing this packet, then re-downloaded and re-verified before publish.
33
-
34
- Historical runs, including P3-9 run `27943672095`, must not be reused for this stage. The rule for later evidence-recording commits is that each must trigger its own fresh release-candidate run before being described as current release-candidate evidence.
35
-
36
- Evidence target and worktree state before remote trigger:
37
-
38
- - Branch: `main`.
39
- - Pre-documentation HEAD SHA: `fdba3ebccb2e57a0ad295101028a2a3937a92204`.
40
- - Initial worktree before the P3-10 remote trigger: clean.
41
- - Local `main`, `origin/main`, and `HEAD` all resolved to `fdba3ebccb2e57a0ad295101028a2a3937a92204` before triggering the workflow.
42
-
43
- P3-10 local validation evidence on 2026-06-22:
44
-
45
- - `npm run typecheck`: passed.
46
- - `npm run lint`: passed.
47
- - `npm test`: passed with 196 tests and 1 skipped installed-package smoke.
48
- - `npm run build`: passed.
49
- - `npm run package:check`: passed with `package boundary ok: 151 files checked`.
50
- - `npm run dogfood`: passed.
51
- - `npm run daemon:verify`: passed with `schemaVersion: "agent-runtime.daemonVerification.v1"`, `ok: true`, and `packageSource: "installed-tarball"`.
52
- - `npm run runtime:safety`: passed with `schemaVersion: "agent-runtime.runtimeSafety.v1"`, `ok: true`, and `packageSource: "installed-tarball"`.
53
- - `npm run release:candidate -- --out-dir /tmp/agent-runtime-p3-10-local-release-candidate`: passed, producing `agent-cli-runtime-0.1.0-alpha.0.tgz`, `npm-pack.json`, `package-files.txt`, `gate-evidence.json`, and `release-verification.json`.
54
- - `npm run release:verify -- --dir /tmp/agent-runtime-p3-10-local-release-candidate`: passed with `schemaVersion: "agent-cli-runtime.releaseVerification.v1"`, `ok: true`, package file count `151`, five artifact names, empty diagnostics, and gate evidence for `daemon:verify` plus `runtime:safety`.
55
- - `npm audit --omit=dev`: passed with `found 0 vulnerabilities`.
56
- - `npm pack --dry-run --json --ignore-scripts`: passed with `151` files and tarball `agent-cli-runtime-0.1.0-alpha.0.tgz`.
57
- - `npm publish --dry-run --ignore-scripts --tag alpha`: passed as a dry-run; npm reported `Publishing to https://registry.npmjs.org/ with tag alpha and default access (dry-run)` and did not publish.
58
- - `node ./dist/cli/main.js agents --json`: passed; Codex `codex-cli 0.142.0-alpha.6` and OpenCode `1.15.6` available, Claude Code `2.1.178` available with `auth_missing`.
59
- - `node ./dist/cli/main.js doctor --json`: passed with `ok: true`; Claude Code remains `auth_missing`.
60
- - `node ./dist/cli/main.js conformance --mode real --agent all --json`: passed without `--allow-real-run`; Codex and OpenCode reported `real_run_skipped`, Claude Code reported `auth_missing`.
61
- - `node ./dist/cli/main.js smoke --mode real --agent codex --json`: exited `0` as safe preflight with `schemaVersion: "agent-runtime.realSmoke.v1"`, `ok: false`, and `runClassification: "real_run_skipped"`; no authenticated real run was launched.
62
- - `git diff --check`: passed.
63
-
64
- Remote workflow pre-documentation evidence:
8
+ ## Current State
65
9
 
66
- - Branch: `main`.
67
- - Workflow head SHA: `fdba3ebccb2e57a0ad295101028a2a3937a92204`.
68
- - Trigger command: `gh workflow run release-candidate.yml --ref main`.
69
- - Run id: `27945938663`.
70
- - Run URL: `https://github.com/iiwish/agent-cli-runtime/actions/runs/27945938663`.
71
- - Event: `workflow_dispatch`.
72
- - Workflow: `Release Candidate`.
73
- - Run status/conclusion: `completed` / `success`.
74
- - Run created/updated: `2026-06-22T10:22:12Z` / `2026-06-22T10:23:33Z`.
75
- - Job `Build release candidate artifacts` id `82690587870`, URL `https://github.com/iiwish/agent-cli-runtime/actions/runs/27945938663/job/82690587870`, started at `2026-06-22T10:22:18Z`, completed at `2026-06-22T10:23:33Z`, and concluded `success`.
76
- - Steps `Install dependencies`, `Run CI gate`, `Run dogfood gate without authenticated real runs`, `Create npm pack artifact and gate evidence without publishing`, `Upload tarball`, `Upload pack metadata`, `Upload package file list`, `Upload daemon-ready gate evidence`, and `Upload release verification` all concluded `success`.
77
- - Download directory: `/tmp/agent-runtime-p3-10-current-head-remote-66VIhN/downloaded`.
78
- - Normalized review directory: `/tmp/agent-runtime-p3-10-current-head-remote-66VIhN/normalized`.
10
+ - Published npm package: `agent-cli-runtime@0.1.0-alpha.1`.
11
+ - Published GitHub pre-release: `v0.1.0-alpha.1`.
12
+ - `agent-cli-runtime@0.1.0-alpha.0` is deprecated because its immutable package docs shipped stale pre-publish status text.
13
+ - Candidate package metadata in this repository: `agent-cli-runtime@0.1.0-alpha.2`.
14
+ - `0.1.0-alpha.2` has fresh main release-candidate evidence and local publish dry-run evidence.
15
+ - `0.1.0-alpha.2` is not published and must not be described as published until a maintainer separately authorizes a real npm publish.
16
+ - Current npm dist-tags remain `alpha -> 0.1.0-alpha.1` and `latest -> 0.1.0-alpha.1`; while there is no stable version, this is recorded as current pre-alpha registry state rather than release failure evidence.
79
17
 
80
- Current artifact metadata from the GitHub Actions API:
81
-
82
- | Artifact | GitHub artifact id | Archive size | Digest | Expires |
83
- | --- | ---: | ---: | --- | --- |
84
- | `agent-cli-runtime-tarball` | `7789535097` | `225632` bytes | `sha256:698d80cd9ce86643396d7c9305424ac0f85cfe9d11bca654912048ed92118a34` | `2026-07-06T10:23:22Z` |
85
- | `agent-cli-runtime-pack-metadata` | `7789535626` | `1998` bytes | `sha256:6c902654a5a8ddc8c5cb59c63efd82ef600d81488efc9eab7c98669a3e8eb564` | `2026-07-06T10:23:24Z` |
86
- | `agent-cli-runtime-package-files` | `7789536134` | `961` bytes | `sha256:18b8adab4fc43d54389137cbdcf6db8e744f0a12c9498f88c0238c759ce39b79` | `2026-07-06T10:23:25Z` |
87
- | `agent-cli-runtime-gate-evidence` | `7789536677` | `443` bytes | `sha256:458f63ff6b59a7b16ec8a918d7253a12e000563a7f9452ae932924902b6e0179` | `2026-07-06T10:23:27Z` |
88
- | `agent-cli-runtime-release-verification` | `7789537198` | `649` bytes | `sha256:27e094fd6aad1b317d9073bef75a27336fe08850592c408d8861eb14df6e7633` | `2026-07-06T10:23:28Z` |
89
-
90
- Downloaded artifact normalization:
91
-
92
- ```bash
93
- gh run download 27945938663 --dir /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/downloaded
94
- cp /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/downloaded/agent-cli-runtime-tarball/agent-cli-runtime-0.1.0-alpha.0.tgz /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/normalized/
95
- cp /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/downloaded/agent-cli-runtime-pack-metadata/npm-pack.json /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/normalized/
96
- cp /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/downloaded/agent-cli-runtime-package-files/package-files.txt /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/normalized/
97
- cp /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/downloaded/agent-cli-runtime-gate-evidence/gate-evidence.json /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/normalized/
98
- cp /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/downloaded/agent-cli-runtime-release-verification/release-verification.json /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/normalized/
99
- npm run release:verify -- --dir /tmp/agent-runtime-p3-10-current-head-remote-66VIhN/normalized
100
- ```
101
-
102
- Downloaded artifact re-verification result:
103
-
104
- - `schemaVersion`: `agent-cli-runtime.releaseVerification.v1`
105
- - `ok`: `true`
106
- - diagnostics: empty
107
- - package file count: `151`
108
- - artifact names: `agent-cli-runtime-tarball`, `agent-cli-runtime-pack-metadata`, `agent-cli-runtime-package-files`, `agent-cli-runtime-gate-evidence`, `agent-cli-runtime-release-verification`
109
- - tarball: `agent-cli-runtime-0.1.0-alpha.0.tgz`
110
- - tarball size: `225378` bytes
111
- - tarball sha256: `b8a9c2beaaed18dd238c27065285362d1c3380e04be57d5f9cec7b198ddd786d`
112
- - npm pack shasum: `513efc70dcc17d2ef58caed070dcf27a7a0eb90d`
113
- - npm pack integrity: `sha512-mOpm9L3FbT+24WgKBQxKvbv90V/3odgekzBYmjPdIl4KzW4U0+P6yHk+02FC8ba1Tm1d6fgERoGqwsTiHC5uEA==`
114
- - package name/version: `agent-cli-runtime@0.1.0-alpha.0`
115
- - gate evidence schema: `agent-cli-runtime.releaseGateEvidence.v1`
116
- - gate evidence commands: `npm run daemon:verify`, `npm run runtime:safety`
117
- - gate evidence package source: both `installed-tarball`
118
- - gate evidence flags: `noAuthenticatedRealRun: true`, `noNpmPublish: true`, `noNpmToken: true`
119
- - package file review: 151 entries and no `.reference/`, `tests/`, fixture paths, raw real CLI output, private paths, token-looking values, Bearer values, or auth env assignments.
120
-
121
- ## 0.1.0-alpha.1 Corrective Alpha Publish Packet
122
-
123
- Current package candidate: `agent-cli-runtime@0.1.0-alpha.1`.
124
-
125
- Dry-run checkpoint before a separately authorized publish:
126
-
127
- ```bash
128
- npm publish --dry-run --ignore-scripts --tag alpha
129
- ```
130
-
131
- The real publish commands below must not be executed unless the user gives explicit publish authorization for this immutable version:
132
-
133
- ```bash
134
- npm publish --tag alpha
135
- npm publish --tag alpha --access public
136
- ```
137
-
138
- Before any future real publish, a maintainer must manually confirm:
18
+ ## Verdict
139
19
 
140
- - `git rev-parse HEAD` and `git rev-parse origin/main` still match the intended reviewed SHA.
141
- - After committing this corrective package-doc update, trigger a fresh `.github/workflows/release-candidate.yml` run for the new commit and verify that `gh run view <new-run-id> --json headSha,status,conclusion,url,jobs` shows that exact commit SHA and success.
142
- - Do not use run `27945938663` or run `27998762396` as final publish evidence for a later corrective commit; each run proves only its own workflow `headSha`.
143
- - `npm run typecheck`, `npm run lint`, `npm test`, `npm run build`, `npm run package:check`, `npm run dogfood`, `npm run daemon:verify`, `npm run runtime:safety`, `npm run release:candidate -- --out-dir <tmp>`, `npm run release:verify -- --dir <tmp>`, `npm audit --omit=dev`, `npm pack --dry-run --json --ignore-scripts`, `npm publish --dry-run --ignore-scripts --tag alpha`, `node ./dist/cli/main.js agents --json`, `node ./dist/cli/main.js doctor --json`, and `git diff --check` pass.
144
- - `npm publish --dry-run --ignore-scripts --tag alpha` reports dry-run mode and `tag alpha`; if it reports `latest`, stop.
145
- - `npm view agent-cli-runtime@0.1.0-alpha.1 version --json` does not show an already-created immutable version before publish.
146
- - `npm dist-tag ls agent-cli-runtime` is captured after publish; if npm keeps `latest` on the only published pre-alpha version, record the exact tag state.
147
- - npm 2FA or the package's configured publish policy is ready for the maintainer account.
148
- - Trusted publishing is not configured for P3-10. A future trusted-publishing path would need a separate publish workflow, npm-side trusted publisher configuration, and explicit `id-token: write`; none of that is present in this release-candidate workflow.
149
- - Manual local publish must not claim GitHub Actions provenance. Provenance is a future trusted-publishing concern, not a P3-10 dry-run claim.
20
+ `0.1.0-alpha.2` is ready to be treated as a publish-ready release candidate after fresh main release-candidate evidence, downloaded artifact verification, and local publish dry-run verification. It remains human-controlled:
150
21
 
151
- Post-publish checks for a separately authorized future publish:
22
+ - no real `npm publish` is performed without explicit maintainer authorization;
23
+ - no GitHub Release is created without explicit maintainer authorization;
24
+ - no npm token, `NODE_AUTH_TOKEN`, trusted publishing setup, or publish workflow secret is added;
25
+ - no authenticated real Codex/Claude/OpenCode run is launched by default gates;
26
+ - `.release-evidence/` and `.reference/` stay outside npm package contents;
27
+ - this package remains a local-first runtime/kernel, not a hosted daemon, control plane, API server, database/WAL, web UI, telemetry system, or remote worker.
152
28
 
153
- ```bash
154
- npm view agent-cli-runtime@0.1.0-alpha.1 version dist-tags --json
155
- npm dist-tag ls agent-cli-runtime
156
- ```
157
-
158
- Rollback boundary:
159
-
160
- - If only the dist-tag is wrong, use `npm dist-tag add agent-cli-runtime@0.1.0-alpha.1 alpha` and, only after confirming it points at an unintended pre-alpha, `npm dist-tag rm agent-cli-runtime latest`.
161
- - If package contents are wrong, publish a new corrected pre-release version; npm does not allow overwriting `agent-cli-runtime@0.1.0-alpha.1`.
162
- - Use `npm unpublish agent-cli-runtime@0.1.0-alpha.1` only if npm policy allows it and a maintainer accepts the registry impact; otherwise deprecate the bad version.
163
-
164
- ## P3-7 API / CLI Schema Freeze
165
-
166
- P3-7 changes documentation and drift protection for existing public/CLI contracts:
167
-
168
- - Added [docs/api-schema-contract.md](./api-schema-contract.md) as the schema inventory and versioning policy entrypoint.
169
- - Public root value export remains `createAgentRuntime`; public type exports remain source-compatible package-root imports for the runtime facade, run/goal records, replay/event envelopes, diagnostics/store shapes, and adapter-authoring types.
170
- - Internal `dist/**` files may exist in the package, but subpath imports into storage/parser/adapter implementation are not documented API.
171
- - Frozen schema inventory: `agent-runtime.event.v1`, `agent-runtime.diagnostics.v1`, `agent-runtime.conformance.v1`, `agent-runtime.realSmoke.v1`, `agent-runtime.storeHealth.v1`, `agent-runtime.storeRepair.v1`, `agent-runtime.cliError.v1`, `agent-cli-runtime.releaseVerification.v1`, and `agent-cli-runtime.releaseGateEvidence.v1`.
172
- - Version bump policy: optional additive fields may stay in-schema; field removal/rename/type or semantic changes require a schema version bump; terminal reason/classification vocabulary changes require docs, tests, and a migration note.
173
- - Failure taxonomy remains explicit: skipped evidence is not success, `auth_missing` is not unavailable, and `needs_verification` is not guessed into flag support.
174
- - Default gates still do not pass `--allow-real-run`.
175
-
176
- P3-7 local validation evidence on 2026-06-22:
177
-
178
- - `npm run typecheck`: passed.
179
- - `npm run lint`: passed.
180
- - `npm test`: passed with 196 tests and 1 skipped installed-package smoke.
181
- - `npm run build`: passed.
182
- - `npm run package:check`: passed with `package boundary ok: 151 files checked`.
183
- - `node ./dist/cli/main.js agents --json`: passed; Codex and OpenCode available, Claude Code available with `auth_missing`.
184
- - `node ./dist/cli/main.js doctor --json`: passed with `ok: true`; Claude Code remains `auth_missing`.
185
- - `node ./dist/cli/main.js conformance --mode real --agent all --json`: passed without `--allow-real-run`; Codex and OpenCode reported `real_run_skipped`, Claude Code reported `auth_missing`.
186
- - `node ./dist/cli/main.js smoke --mode real --agent codex --json`: passed as safe preflight and reported `real_run_skipped`.
187
- - `git diff --check`: passed.
188
-
189
- ## P3-6 Real CLI Opt-In Smoke Evidence
190
-
191
- P3-6 changes how real smoke evidence is requested and reviewed:
192
-
193
- - `node ./dist/cli/main.js smoke --mode real --agent <id> --json` does not launch a real agent run; it emits `schemaVersion: "agent-runtime.realSmoke.v1"` with `runClassification: "real_run_skipped"` or another preflight classification.
194
- - Authenticated real runs require `--allow-real-run` and expected text, for example `node ./dist/cli/main.js smoke --mode real --agent codex --allow-real-run --expect-text <safe_text> --json`.
195
- - The same command shape is documented for Codex, Claude Code, and OpenCode.
196
- - The summary includes `adapter`, `version`, `auth`, `modelsSource`, `runClassification`, `expectedTextMatched`, redacted/truncated `observedTextTail`, `cwdMutationChecked`, `cwdMutated`, `diagnosticsCount`, `skippedReason`, and `failureReason`.
197
- - The summary excludes prompt text, token values, private cwd, raw stdout/stderr, and final run records.
198
- - A custom `--prompt` or `--prompt-file` without `--expect-text` cannot pass on exit `0`; it is classified as `unexpected_output`.
199
- - Preflight/run classifications include `auth_missing`, `unavailable_executable`, `unsupported_flag`, `unexpected_output`, `cwd_mutated`, `needs_verification`, and `real_run_skipped`.
200
- - Claude Anthropic-compatible provider docs use environment variable names and placeholders only; no real token value, provider URL, or private model alias is committed.
201
- - `.github/workflows/ci.yml`, `.github/workflows/release-candidate.yml`, `scripts/dogfood.mjs`, `scripts/create-release-candidate.mjs`, and `package.json` remain free of `--allow-real-run`.
202
-
203
- P3-6 local validation evidence on 2026-06-22:
204
-
205
- - `npm run typecheck`: passed.
206
- - `npm run lint`: passed.
207
- - `npm test`: passed with 191 tests and 1 skipped installed-package smoke.
208
- - `npm run build`: passed.
209
- - `npm run package:check`: passed with `package boundary ok: 147 files checked`.
210
- - `node ./dist/cli/main.js conformance --mode real --agent all --json`: passed without `--allow-real-run`; Codex and OpenCode reported `real_run_skipped`, Claude Code reported `auth_missing`.
211
- - `node ./dist/cli/main.js smoke --mode real --agent codex --json`: passed as safe preflight and reported `real_run_skipped`.
212
- - `node ./dist/cli/main.js smoke --mode real --agent codex --allow-real-run --expect-text "agent-runtime real smoke ok" --timeout-ms 120000 --json`: completed with `runClassification: "success"`, `expectedTextMatched: true`, and `cwdMutated: false`. A 30s default-timeout retry can still classify as `timeout` in this environment.
213
- - `node ./dist/cli/main.js smoke --mode real --agent claude --allow-real-run --expect-text "agent-runtime real smoke ok" --json`: completed with `runClassification: "auth_missing"` before launch.
214
- - `node ./dist/cli/main.js smoke --mode real --agent opencode --allow-real-run --expect-text "agent-runtime real smoke ok" --timeout-ms 120000 --json`: completed with `runClassification: "success"`, `expectedTextMatched: true`, and `cwdMutated: false`. A 30s default-timeout retry can still classify as `timeout` in this environment.
215
-
216
- ## Historical P3-5 Remote Release Evidence Closure
217
-
218
- P3-5 closed the P3-4 remote evidence gap for its workflow head SHA. It remains historical evidence only and does not prove the P3-8, P3-9, or P3-10 target SHA.
219
-
220
- Workflow evidence target:
221
-
222
- - Branch: `main`.
223
- - Workflow head SHA: `8d7bc2a19c626caa1ad5223acbcd35df34aff18e`.
224
- - Trigger command: `gh workflow run release-candidate.yml --ref main`.
225
- - Run id: `27932628093`.
226
- - Run URL: `https://github.com/iiwish/agent-cli-runtime/actions/runs/27932628093`.
227
- - Event: `workflow_dispatch`.
228
- - Workflow: `Release Candidate`.
229
- - Run status/conclusion: `completed` / `success`.
230
- - Run created/updated: `2026-06-22T05:56:49Z` / `2026-06-22T05:57:59Z`.
231
- - Job `Build release candidate artifacts` started at `2026-06-22T05:56:53Z`, completed at `2026-06-22T05:57:58Z`, and concluded `success`.
232
- - Steps `Install dependencies`, `Run CI gate`, `Run dogfood gate without authenticated real runs`, `Create npm pack artifact and gate evidence without publishing`, `Upload tarball`, `Upload pack metadata`, `Upload package file list`, `Upload daemon-ready gate evidence`, and `Upload release verification` all concluded `success`.
233
- - Download directory: `/tmp/agent-runtime-p3-5-remote-7rkBqm/downloaded`.
234
- - Normalized review directory: `/tmp/agent-runtime-p3-5-remote-7rkBqm/normalized`.
235
-
236
- Historical artifact metadata from the GitHub Actions API:
237
-
238
- | Artifact | GitHub artifact id | Archive size | Digest | Expires |
239
- | --- | ---: | ---: | --- | --- |
240
- | `agent-cli-runtime-tarball` | `7784276720` | `206911` bytes | `sha256:8f7c4b8d9aa4aee9f375fcbf1de5644884d388693832ed42310dfc41a48e6270` | `2026-07-06T05:57:52Z` |
241
- | `agent-cli-runtime-pack-metadata` | `7784276910` | `1960` bytes | `sha256:c28f03b875ca489eee15f0867d4dd309f0dbc46a2ed9184f61be8fc5f5b1e773` | `2026-07-06T05:57:53Z` |
242
- | `agent-cli-runtime-package-files` | `7784277102` | `947` bytes | `sha256:7bff251b88d155027061de0e32a2f065e4614e61d2cc1cdceabbf9333fae4e03` | `2026-07-06T05:57:54Z` |
243
- | `agent-cli-runtime-gate-evidence` | `7784277275` | `443` bytes | `sha256:ddb608e25f79489f16604a01de10a2ab0664721636b1f20448e18adcd369caf2` | `2026-07-06T05:57:55Z` |
244
- | `agent-cli-runtime-release-verification` | `7784277464` | `649` bytes | `sha256:c97a91bb356a1934d82ebcc69404ad614968a2ab3904a6e9d5871bd8c818ed78` | `2026-07-06T05:57:56Z` |
245
-
246
- Downloaded artifact normalization:
247
-
248
- ```bash
249
- gh run download 27932628093 --dir /tmp/agent-runtime-p3-5-remote-7rkBqm/downloaded
250
- cp /tmp/agent-runtime-p3-5-remote-7rkBqm/downloaded/agent-cli-runtime-tarball/agent-cli-runtime-0.1.0-alpha.0.tgz /tmp/agent-runtime-p3-5-remote-7rkBqm/normalized/
251
- cp /tmp/agent-runtime-p3-5-remote-7rkBqm/downloaded/agent-cli-runtime-pack-metadata/npm-pack.json /tmp/agent-runtime-p3-5-remote-7rkBqm/normalized/
252
- cp /tmp/agent-runtime-p3-5-remote-7rkBqm/downloaded/agent-cli-runtime-package-files/package-files.txt /tmp/agent-runtime-p3-5-remote-7rkBqm/normalized/
253
- cp /tmp/agent-runtime-p3-5-remote-7rkBqm/downloaded/agent-cli-runtime-gate-evidence/gate-evidence.json /tmp/agent-runtime-p3-5-remote-7rkBqm/normalized/
254
- cp /tmp/agent-runtime-p3-5-remote-7rkBqm/downloaded/agent-cli-runtime-release-verification/release-verification.json /tmp/agent-runtime-p3-5-remote-7rkBqm/normalized/
255
- npm run release:verify -- --dir /tmp/agent-runtime-p3-5-remote-7rkBqm/normalized
256
- ```
29
+ ## P7-3 Alpha.2 Publish Dry-Run Flow
257
30
 
258
- Downloaded artifact re-verification result:
259
-
260
- - `schemaVersion`: `agent-cli-runtime.releaseVerification.v1`
261
- - `ok`: `true`
262
- - diagnostics: empty
263
- - package file count: `147`
264
- - local `npm pack --dry-run --json --ignore-scripts` file count at review: `147`
265
- - artifact names: `agent-cli-runtime-tarball`, `agent-cli-runtime-pack-metadata`, `agent-cli-runtime-package-files`, `agent-cli-runtime-gate-evidence`, `agent-cli-runtime-release-verification`
266
- - tarball: `agent-cli-runtime-0.1.0-alpha.0.tgz`
267
- - tarball size: `206662` bytes
268
- - tarball sha256: `6e7711a275a1d58e862809e4dd5d34c76cf79ca5f812af1e16872ea54b97542c`
269
- - npm pack shasum: `3ee52f4b97131527de752651f5a395b769ccf7c0`
270
- - package name/version: `agent-cli-runtime@0.1.0-alpha.0`
271
- - gate evidence schema: `agent-cli-runtime.releaseGateEvidence.v1`
272
- - gate evidence commands: `npm run daemon:verify`, `npm run runtime:safety`
273
- - gate evidence package source: both `installed-tarball`
274
- - gate evidence flags: `noAuthenticatedRealRun: true`, `noNpmPublish: true`, `noNpmToken: true`
275
-
276
- P3-5 local sanity evidence on 2026-06-22:
277
-
278
- - `git diff --check`: passed before P3-5 doc/test edits.
279
- - `node ./dist/cli/main.js agents --json`: passed; Codex `codex-cli 0.142.0-alpha.6` and OpenCode `1.15.6` available, Claude Code `2.1.178` available with `auth_missing`.
280
- - `node ./dist/cli/main.js doctor --json`: passed with `ok: true`; Claude Code remains `auth_missing`.
281
- - `node ./dist/cli/main.js conformance --mode real --agent all --json`: passed without `--allow-real-run`; Codex and OpenCode reported `real_run_skipped` / `real_run_not_allowed`, Claude Code reported `auth_missing`. No authenticated real agent run was launched.
282
-
283
- ## P3-4 CI / Release Gate Alignment
284
-
285
- P3-4 is local-first release gate alignment, not a new runtime feature and not an npm publication:
286
-
287
- - CI matrix: `.github/workflows/ci.yml` keeps Node.js 20/22/24 for typecheck, lint, tests, build, production dependency audit, package boundary checks, and pack dry-run.
288
- - Single-Node release gates: CI now runs `npm run daemon:verify`, `npm run runtime:safety`, and `npm run dogfood` once on Node.js 22 to avoid repeating installed-package gates across the matrix.
289
- - Release-candidate workflow: `.github/workflows/release-candidate.yml` remains manual `workflow_dispatch`, runs `npm ci`, `npm run ci`, `npm run dogfood`, then runs `npm run release:candidate -- --out-dir release-candidate`.
290
- - Candidate artifacts: `release:candidate` writes `npm-pack.json`, `package-files.txt`, `gate-evidence.json`, the tarball, and `release-verification.json`.
291
- - Gate evidence schema: `gate-evidence.json` uses `schemaVersion: "agent-cli-runtime.releaseGateEvidence.v1"` and records `npm run daemon:verify` plus `npm run runtime:safety` with installed-package output schema versions.
292
- - Verifier: `release:verify` requires `gate-evidence.json`; missing or incomplete daemon-ready gate evidence fails verification while package boundary, private path, token-looking value, Bearer, and auth env checks remain active.
293
- - Boundary: workflows still contain no `npm publish`, no `NODE_AUTH_TOKEN` / `NPM_TOKEN`, no trusted-publishing credential setup, and no `--allow-real-run`.
294
-
295
- Remote P3-4 evidence was pending until P3-5. P3-5 run `27932628093` is the historical workflow-head evidence closure for the five-artifact set.
296
-
297
- ## P3-1 Daemon-Ready Contract Hardening
298
-
299
- P3-1 is a post-P2-13 contract freeze, not a new release publication:
300
-
301
- - New embedding contract: [docs/daemon-ready-contract.md](./daemon-ready-contract.md).
302
- - Runtime positioning: local-first execution kernel for daemon/product shell embedding, not hosted control plane.
303
- - Root value API boundary: still `createAgentRuntime` only.
304
- - Schema freeze: event envelope `agent-runtime.event.v1`, diagnostics bundle `agent-runtime.diagnostics.v1`, conformance report `agent-runtime.conformance.v1`, store health `agent-runtime.storeHealth.v1`, store repair `agent-runtime.storeRepair.v1`, and CLI JSON error `agent-runtime.cliError.v1`.
305
- - Compatibility rule: optional fields may be added in-schema; removing, renaming, changing type, or changing stable semantics requires a schema bump.
306
- - Failure taxonomy: event terminal reasons remain stable; CLI/conformance classifications such as `real_run_skipped`, `unsupported_flag`, `unexpected_output`, `cwd_mutated`, `needs_verification`, and `unavailable_executable` remain explicit evidence states rather than being converted to success.
307
- - Non-goals: no daemon/API server, no database/WAL, no remote worker, no UI/artifact layer, no telemetry, no npm publish, no publish workflow, no npm token/trusted publishing configuration.
308
-
309
- P3-1 local validation on 2026-06-22:
310
-
311
- - `npm run typecheck`: passed.
312
- - `npm run lint`: passed.
313
- - `npm test`: passed with 173 tests across 9 files.
314
- - `npm run build`: passed.
315
- - `npm run package:check`: passed with `package boundary ok: 147 files checked`.
316
- - `npm run release:candidate -- --out-dir /tmp/agent-runtime-p3-1-G8WgWS`: passed, producing `agent-cli-runtime-0.1.0-alpha.0.tgz`.
317
- - `npm run release:verify -- --dir /tmp/agent-runtime-p3-1-G8WgWS`: passed with `schemaVersion: "agent-cli-runtime.releaseVerification.v1"`, `ok: true`, package file count `147`, and empty diagnostics.
318
- - `npm pack --dry-run`: passed with total files `147` and `docs/daemon-ready-contract.md` included.
319
- - `node ./dist/cli/main.js agents --json`: passed.
320
- - `node ./dist/cli/main.js doctor --json`: passed with `ok: true`; Claude Code remains `auth_missing`, which is expected local auth evidence rather than real-run success.
321
- - `node ./dist/cli/main.js conformance --mode real --agent all --json`: passed without `--allow-real-run`; Codex `0.142.0-alpha.6` and OpenCode `1.15.6` reported `real_run_skipped`, Claude Code `2.1.178` reported `auth_missing`.
322
- - `git diff --check`: passed.
323
- - `npm publish --dry-run` was not run for P3-1 because this stage does not change publish readiness or perform publish simulation.
324
-
325
- ## P2-13 Alpha Publish Readiness
326
-
327
- Decision state:
328
-
329
- - npm publication: not performed.
330
- - Package metadata: `repository`, `homepage`, and `bugs` are present alongside the existing package entrypoint, files, engines, keywords, and `publishConfig.tag: "alpha"`.
331
- - Public API boundary: package root value export remains `createAgentRuntime` only; public types remain declaration/type surface.
332
- - Publish runbook: [docs/release-publish-runbook.md](./release-publish-runbook.md) records dry-run, real publish commands, human confirmation points, dist-tag checks, rollback/deprecation/unpublish boundaries, 2FA, trusted publishing, provenance, and token strategy.
333
- - Workflow strategy: `.github/workflows/ci.yml` and `.github/workflows/release-candidate.yml` remain artifact/check workflows only. They do not run `npm publish`, do not configure registry credentials, and do not require npm tokens.
334
- - Token/provenance/2FA decision: prefer future trusted publishing through a dedicated publish workflow and npm-side trusted publisher configuration; for a first manual alpha, use interactive maintainer publish with npm 2FA and no committed tokens. Trusted publishing is not configured in P2-13, and local manual publish must not claim GitHub Actions provenance.
335
- - Dist-tag decision: future real publish must use `--tag alpha`; `latest` must not move for this pre-alpha package.
336
- - Rollback decision: wrong dist-tags are fixed with `npm dist-tag`; unsafe package content requires a new version, deprecation, or npm-policy-eligible unpublish. The same `name@version` cannot be overwritten.
337
-
338
- P2-13 local validation on 2026-06-22:
339
-
340
- - `npm run typecheck`: passed.
341
- - `npm run lint`: passed.
342
- - `npm test`: passed with 172 tests across 9 files.
343
- - `npm run build`: passed.
344
- - `npm run package:check`: passed with `package boundary ok: 146 files checked`.
345
- - `npm run release:candidate -- --out-dir <tmp-dir>`: passed, producing `agent-cli-runtime-0.1.0-alpha.0.tgz`.
346
- - `npm run release:verify -- --dir <tmp-dir>`: passed with `schemaVersion: "agent-cli-runtime.releaseVerification.v1"`, `ok: true`, package file count `146`, and empty diagnostics.
347
- - `npm pack --dry-run`: passed with total files `146` and `docs/release-publish-runbook.md` included.
348
- - `npm publish --dry-run --ignore-scripts --tag alpha`: passed as a dry-run. npm reported `Publishing to https://registry.npmjs.org/ with tag alpha and default access (dry-run)` and did not publish.
349
- - `node ./dist/cli/main.js agents --json`: passed.
350
- - `node ./dist/cli/main.js doctor --json`: passed with `ok: true`; Claude Code remains `auth_missing`, which is expected local auth evidence rather than real-run success.
351
- - `git diff --check`: passed.
352
-
353
- ## Local Verification Commands
354
-
355
- Run these from the repository root:
31
+ The human-controlled alpha.2 path is:
356
32
 
357
33
  ```bash
358
34
  npm run typecheck
359
35
  npm run lint
360
36
  npm test
361
- npm run build
362
37
  npm run package:check
363
- npm run dogfood
364
- npm run prepublish:check
365
- npm run release:candidate -- --out-dir release-candidate
366
- npm run release:verify -- --dir release-candidate
38
+ npm run compat:real:evidence:verify
39
+ npm run release:candidate -- --out-dir <tmp-dir>
40
+ npm run release:verify -- --dir <tmp-dir>
367
41
  npm pack --dry-run
368
42
  npm publish --dry-run --ignore-scripts --tag alpha
369
43
  node ./dist/cli/main.js agents --json
370
44
  node ./dist/cli/main.js doctor --json
371
- node ./dist/cli/main.js conformance --mode real --agent all --json
372
- node ./dist/cli/main.js smoke --mode real --agent codex --json
373
- node ./dist/cli/main.js smoke --mode real --agent codex --allow-real-run --expect-text "agent-runtime real smoke ok" --json
374
45
  git diff --check
375
46
  ```
376
47
 
377
- `npm publish --dry-run --ignore-scripts --tag alpha` is a local manual safety check only. The explicit `--tag alpha` is required so dry-run output matches the pre-alpha release intent instead of reporting `latest`. Do not add it as a required CI gate unless npm dry-run output is proven stable for this repository and registry context.
48
+ The dry-run command is the current stop point:
378
49
 
379
- ## Remote CI Evidence
380
-
381
- P2-12 remote audit evidence on 2026-06-20:
382
-
383
- - Local branch: `main`.
384
- - Remote branch: `main`.
385
- - Commit SHA: `2f8832119b4ebdb8393077052560589a398ebf56`.
386
- - `gh auth status` succeeded with workflow-capable GitHub CLI credentials.
387
- - `gh workflow run release-candidate.yml --ref main` created run `27869580048`.
388
- - Run URL: `https://github.com/iiwish/agent-cli-runtime/actions/runs/27869580048`.
389
- - Event: `workflow_dispatch`.
390
- - Workflow: `Release Candidate`.
391
- - Run status/conclusion: `completed` / `success`.
392
- - Run created: `2026-06-20T11:19:33Z`.
393
- - Run updated: `2026-06-20T11:20:40Z`.
394
- - Job `Build release candidate artifacts` started at `2026-06-20T11:19:37Z`, completed at `2026-06-20T11:20:39Z`, and concluded `success`.
395
- - The workflow steps `Install dependencies`, `Run CI gate`, `Run dogfood gate without authenticated real runs`, `Create npm pack artifact without publishing`, and all four artifact upload steps concluded `success`.
396
- - GitHub emitted a non-blocking annotation that the referenced actions still target deprecated Node.js 20 internals while the runner forces Node.js 24 for those actions.
397
-
398
- Expected remote evidence:
399
-
400
- - `.github/workflows/ci.yml` runs typecheck, lint, tests, build, production dependency audit, package boundary check, and `npm pack --dry-run` on Node.js 20/22/24.
401
- - The CI release-gates job runs once on Node.js 22 and executes `npm run daemon:verify`, `npm run runtime:safety`, and `npm run dogfood` without passing `--allow-real-run`.
402
- - `.github/workflows/release-candidate.yml` is manual `workflow_dispatch` only.
403
- - The release-candidate workflow runs `npm ci`, `npm run ci`, `npm run dogfood`, creates npm pack metadata and daemon-ready gate evidence through `npm run release:candidate`, verifies the generated artifacts through `npm run release:verify`, and uploads artifacts.
404
- - No workflow runs `npm publish`, sets `NODE_AUTH_TOKEN`, or requires an npm token.
405
- P2-13 keeps those workflow guarantees and does not add a publish workflow.
50
+ ```bash
51
+ npm publish --dry-run --ignore-scripts --tag alpha
52
+ ```
406
53
 
407
- Remote GitHub Actions evidence for the P3-10 pre-documentation release-candidate target is run `27945938663` on SHA `fdba3ebccb2e57a0ad295101028a2a3937a92204`. It must not be reused as final publish evidence after this packaged evidence packet is committed. Historical P3-9 run `27943672095` only proves target SHA `65fac505ca3eb830a06d8656068cf4ed5f6dd46a`; historical P3-9 interim run `27942743285` only proves target SHA `a0299a7d81bb614661922bebc8c75496cf0a3d11` before the strict `fixtures?` package-boundary lock; historical P3-8 run `27940814340` only proves target SHA `eb8de0f9b1edfa3f94c35a50b31005c5d3c105d4`; historical P3-5 run `27932628093` only proves workflow head SHA `8d7bc2a19c626caa1ad5223acbcd35df34aff18e`; historical P2-12 run `27869580048` must not be reused as evidence for later release-candidate targets.
54
+ It must show a dry run with `tag alpha`. A real publish requires a separate explicit maintainer authorization after fresh current-head release-candidate evidence passes.
408
55
 
409
56
  ## Release-Candidate Artifacts
410
57
 
411
- The manual release-candidate workflow uploads:
412
-
413
- - `agent-cli-runtime-tarball`: the packed `agent-cli-runtime-0.1.0-alpha.0.tgz` tarball.
414
- - `agent-cli-runtime-pack-metadata`: `release-candidate/npm-pack.json` from `npm pack --json`.
415
- - `agent-cli-runtime-package-files`: `release-candidate/package-files.txt`, one packed package path per line.
416
- - `agent-cli-runtime-gate-evidence`: `release-candidate/gate-evidence.json` from `npm run release:candidate`.
417
- - `agent-cli-runtime-release-verification`: `release-candidate/release-verification.json` from `npm run release:verify`.
58
+ `npm run release:candidate -- --out-dir <tmp-dir>` writes five review artifacts:
418
59
 
419
- Artifacts are retained for 14 days to keep the audit window explicit while avoiding long-lived stale release-candidate evidence.
60
+ - `agent-cli-runtime-tarball`
61
+ - `agent-cli-runtime-pack-metadata`
62
+ - `agent-cli-runtime-package-files`
63
+ - `agent-cli-runtime-gate-evidence`
64
+ - `agent-cli-runtime-release-verification`
420
65
 
421
- The P3-10 artifact set has five artifacts and all were re-verified from downloaded GitHub Actions artifacts. The P2-12 downloaded artifact table below is retained as historical evidence for commit `2f8832119b4ebdb8393077052560589a398ebf56`; it predates `agent-cli-runtime-gate-evidence` and must not be reused as current release-candidate evidence.
66
+ `npm run release:verify -- --dir <tmp-dir>` emits `schemaVersion: "agent-cli-runtime.releaseVerification.v1"` and must return `ok: true` with empty diagnostics before the candidate can proceed.
422
67
 
423
- Downloaded artifact evidence from run `27869580048`:
68
+ `gate-evidence.json` must use `schemaVersion: "agent-cli-runtime.releaseGateEvidence.v1"` and include:
424
69
 
425
- | Artifact | GitHub artifact id | Archive size | Digest | Expires |
426
- | --- | ---: | ---: | --- | --- |
427
- | `agent-cli-runtime-tarball` | `7764861497` | `187609` bytes | `sha256:db669f9ccf34873ec1619c9d7fe1669a2bdc49a4de64a7e183c1d8fe5f1a4aea` | `2026-07-04T11:20:35Z` |
428
- | `agent-cli-runtime-pack-metadata` | `7764861577` | `1921` bytes | `sha256:0b02f459bd8bdf87c1787ecc43b2a748e27841bd59092b2e72b405970503250f` | `2026-07-04T11:20:36Z` |
429
- | `agent-cli-runtime-package-files` | `7764861640` | `924` bytes | `sha256:9b3d5b591520d5c86723e6cb47c1bf24d11723b85d17251b4cc2095115608c52` | `2026-07-04T11:20:37Z` |
430
- | `agent-cli-runtime-release-verification` | `7764861710` | `444` bytes | `sha256:56cb8a125a27b88b816762b6cc9ed5320da66fcc26040c4fa4fec39faec2cf99` | `2026-07-04T11:20:37Z` |
70
+ - `daemon:verify`
71
+ - `runtime:safety`
72
+ - `compat:real:evidence:verify`
431
73
 
432
- `gh run download 27869580048` downloaded artifacts into one subdirectory per artifact name. The downloaded files were copied into a temporary normalized review directory so the verifier could inspect `npm-pack.json`, `package-files.txt`, `release-verification.json`, and the tarball together.
74
+ The gate evidence must keep `noAuthenticatedRealRun`, `noNpmPublish`, and `noNpmToken` true.
433
75
 
434
- Downloaded artifact re-verification:
435
-
436
- ```bash
437
- npm run release:verify -- --dir /tmp/agent-runtime-p2-12-remote-5P5MSc/normalized
438
- ```
439
-
440
- Result:
441
-
442
- - `schemaVersion`: `agent-cli-runtime.releaseVerification.v1`
443
- - `ok`: `true`
444
- - package file count: `145`
445
- - tarball: `agent-cli-runtime-0.1.0-alpha.0.tgz`
446
- - tarball size: `187378` bytes
447
- - tarball sha256: `3701bd6355651bbc200d5c017a9b01c3dd7136140b64dee0781e6eb601a7a657`
448
- - package name/version: `agent-cli-runtime@0.1.0-alpha.0`
449
- - diagnostics: empty
450
-
451
- ## Local Artifact Generation And Verification
452
-
453
- Generate the same artifact shape locally without publishing:
454
-
455
- ```bash
456
- npm run release:candidate -- --out-dir release-candidate
457
- ```
458
-
459
- The command writes `npm-pack.json`, `package-files.txt`, `gate-evidence.json`, the tarball, and `release-verification.json` to the chosen directory. It does not run `npm publish` and should not leave a tarball in the repository root.
460
-
461
- Verify a local or downloaded artifact directory:
76
+ ## Package Boundary
462
77
 
463
- ```bash
464
- npm run release:verify -- --dir release-candidate
465
- ```
78
+ The npm package may include stable docs, examples, `dist/`, and the runtime entrypoints. It must not include:
466
79
 
467
- The verification JSON uses `schemaVersion: "agent-cli-runtime.releaseVerification.v1"` and reports `ok`, `checkedFiles`, `tarball`, `diagnostics`, `artifactNames`, `packageName`, and `version`. Paths and secret-looking values in diagnostics are redacted.
80
+ - `.release-evidence/`
81
+ - `.reference/`
82
+ - `tests/`
83
+ - `tests/fixtures/`
84
+ - fault fixtures
85
+ - raw real CLI output
86
+ - local temporary review directories
87
+ - private user paths
88
+ - raw prompts or full command transcripts
89
+ - token-looking values, Bearer values, or auth environment assignment values
468
90
 
469
- ## Artifact Review Checklist
91
+ `npm run package:check`, `npm pack --dry-run`, and `npm run release:verify -- --dir <tmp-dir>` enforce this boundary.
470
92
 
471
- Review the uploaded package file list and pack metadata before treating the candidate as shippable:
93
+ ## P6 Evidence Boundary
472
94
 
473
- - No `.reference/`.
474
- - No `tests/` or fixture directories.
475
- - No fault fixtures.
476
- - No `repair-backups/`.
477
- - No raw corrupt samples.
478
- - No raw real CLI output.
479
- - No real private paths.
480
- - No token-looking values, Bearer values, or auth env assignment values.
481
- - Includes `docs/daemon-ready-contract.md`.
482
- - Includes `dist/`, README files, LICENSE, docs, examples, `scripts/dogfood.mjs`, and release docs.
483
- - Includes `docs/release-publish-runbook.md`.
484
- - Package root value API remains limited to `createAgentRuntime`; public TypeScript types remain type exports.
95
+ P6 added the offline real compatibility evidence verifier and proved that the release-candidate gate can carry compatibility evidence without launching authenticated real agent runs. The current packaged report records only the stable rule:
485
96
 
486
- ## Package Boundary
97
+ - `compat:real:evidence:verify` is part of `prepublish:check` and `release:candidate`;
98
+ - the verifier reads repo-only evidence under `.release-evidence/`;
99
+ - `dogfood` and normal CI do not depend on repo-only compatibility evidence;
100
+ - release gate summaries keep only command, ok state, schema versions, and redacted diagnostic count/codes.
487
101
 
488
- `npm run package:check` is the local package boundary gate. It checks npm pack file paths and scans committed docs/examples/scripts for private paths and token-looking content. The release report itself is included in the package so consumers can inspect the candidate evidence and non-goals.
102
+ Detailed P6-4, P6-5, and P6-6 run/artifact summaries are repo-local evidence files under `.release-evidence/`. They are not package content and must not be copied into README or packaged docs.
489
103
 
490
- `npm run release:verify` is the release artifact gate for generated or downloaded artifacts. It validates npm pack JSON, package file list parity, daemon-ready gate evidence, tarball filename/path/existence, disallowed package paths, private paths, and token-looking values, then emits stable redacted JSON.
104
+ ## Schema And Compatibility Contracts
491
105
 
492
- ## Real CLI Evidence Boundary
106
+ The API and CLI schema inventory, versioning policy, root export boundary, and failure taxonomy are maintained in [docs/api-schema-contract.md](./api-schema-contract.md). The release-facing schemas are:
493
107
 
494
- Default release gates do not launch authenticated real agent runs. `conformance --mode real --agent all --json` and `smoke --mode real --agent <id> --json` perform real local executable/version/auth/model/profile certification and report `real_run_skipped`, `auth_missing`, `unsupported_flag`, or `needs_verification` honestly.
108
+ - `agent-cli-runtime.releaseVerification.v1`
109
+ - `agent-cli-runtime.releaseGateEvidence.v1`
110
+ - `agent-cli-runtime.realCompatibilityEvidenceVerification.v1`
111
+ - `agent-cli-runtime.realCompatibilityEvidence.v1`
495
112
 
496
- Authenticated real runs require explicit `--allow-real-run --expect-text <safe_text>` and remain local/manual evidence. The real-smoke summary is redacted and does not contain prompt text, token values, private cwd, raw stdout/stderr, or the final run record.
113
+ Skipped evidence is not success, `auth_missing` is not unavailable, and `needs_verification` must not be guessed into support.
497
114
 
498
115
  ## Known Risks
499
116
 
500
- - Remote GitHub Actions evidence is commit-specific; P3-10 run `27945938663` proves pre-documentation SHA `fdba3ebccb2e57a0ad295101028a2a3937a92204`, not any later commit containing this report.
501
- - Because release docs are packaged, committing this report changes npm pack output; final publish evidence requires a fresh post-documentation release-candidate workflow and artifact re-verification.
502
- - Historical P3-9 run `27943672095` only proves target SHA `65fac505ca3eb830a06d8656068cf4ed5f6dd46a`; historical P3-9 interim run `27942743285` only proves target SHA `a0299a7d81bb614661922bebc8c75496cf0a3d11` before the strict `fixtures?` package-boundary lock; historical P3-8 run `27940814340` only proves target SHA `eb8de0f9b1edfa3f94c35a50b31005c5d3c105d4`; historical P3-5 run `27932628093` only proves workflow head SHA `8d7bc2a19c626caa1ad5223acbcd35df34aff18e`; historical P2-12 run `27869580048` only proves commit `2f8832119b4ebdb8393077052560589a398ebf56` and predates the gate-evidence artifact.
503
- - Real CLI behavior, auth state, model lists, and flags can drift after this dated evidence.
504
- - OpenCode explicit read-only/workspace-write flags, extra dirs, and session/resume remain in `needsVerification`.
505
- - Claude Code authenticated run smoke depends on local auth or a correctly configured provider environment.
506
- - npm dry-run output can vary by npm version and registry context, so it remains a manual/local gate rather than a flaky CI requirement.
507
- - Trusted publishing and provenance are not configured in P2-13. Any future provenance claim must match the actual publish path.
508
-
509
- ## Explicit Non-Goals
510
-
511
- - Do not publish npm.
512
- - Do not require npm token or registry credentials.
513
- - Do not configure trusted publishing or npm provenance.
514
- - Do not claim stable API.
515
- - Do not claim OpenDesign daemon parity.
516
- - Do not add daemon/API server, database, WAL, remote worker, web UI, telemetry, or scheduler expansion.
517
- - Do not convert `real_run_skipped`, `auth_missing`, `unsupported_flag`, or `needs_verification` into real agent run success.
117
+ - `0.1.0-alpha.2` is still unpublished; registry and GitHub Release post-publish verification can only run after explicit real publish authorization.
118
+ - Real CLI behavior, auth state, model lists, and flags can drift after dated compatibility evidence.
119
+ - npm dry-run output can vary by npm version and registry context, so the alpha dry-run remains a local manual safety gate rather than a required remote CI gate.
120
+ - Trusted publishing and provenance are not configured. Any future provenance claim must match the actual publish path.